Method and apparatus for interface control with prompt and feedback

ABSTRACT

To prompt input and provide feedback on input to a user with an interface, inputs and graphical cursors associated with those inputs are defined. Each input may have several forms such as base, hover, engaged, completed, and error. User input is anticipated. The base form of the anticipated input cursor is displayed to prompt the user for the anticipated input. If user hover is detected that matches anticipated input, the hover form is displayed to confirm the match to the user. If user input is detected that matches anticipated input, the engaged form is displayed as confirmation. If user input is completed that matches anticipated input, the completed form is displayed as confirmation. If user hover or input does not match anticipated input, the error form is displayed to indicate mismatch. Not all cursors must have all forms, and some cursors may have multiples of some forms.

FIELD OF THE INVENTION

This disclosure relates to controlling an interface with prompts forinput and/or feedback regarding that input. More particularly, thedisclosure relates to outputting graphical prompts such as cursorsindicating to a user the type of input that is anticipated, andproviding graphical feedback to the user as to whether the user inputthat is detected corresponds with the user input that is anticipated.

DESCRIPTION OF RELATED ART

Cursors may serve to indicate where and/or when input is to be entered.For example, a cursor may be displayed within a digital text document soas indicate where text would be added to that document, if a user wereto enter text at that time.

However, problems may manifest if variables other than time and/or placeare relevant. For example, if a two or more distinct types of input maybe entered, it may be unclear from a cursor as to which type of input isappropriate even if the time and place for entering the input isvisually identified by the presence and/or position of the cursor. Itmay not be clear to the user that he or she is entering suitable inputuntil after input has been entered; an indication of time and place maynot be sufficient to either confirm correct input or advise of incorrectinput.

Thus even if a cursor may serve to indicate the time and place at whichinput is to be entered, a degree of ambiguity may remain. As inputsbecome more varied, such issues may become increasingly problematic. Forexample, with two types of input distinguishing an appropriate situationfor each may be relatively easy, and even a random guess may be expectedto be correct 50% of the time, and distinguishing, by contrast withthree, four, or more types of input determining the appropriate inputtype may be more difficult, and random guessing may be less effective.

BRIEF SUMMARY OF THE INVENTION

This disclosure contemplates a variety of systems, apparatus, methods,and paradigms for prompting, confirming, and/or providing feedback oninput.

In one embodiment, a machine-implemented method is provided thatincludes establishing user inputs in a processor, establishing graphicalcursors in the processor, and associating each of the cursors with atleast one of the user inputs in the processor. The method includeanticipating an anticipated user input in the processor, and outputtingthe cursor associated with the anticipated user input to a graphicaldisplay. Each of the graphical cursors is graphically distinctive fromthe other cursors and is graphically indicative of the user inputsassociated therewith, so as to identify to a viewer of the graphicaldisplay the anticipated user input.

The method may include establishing a base form and an engaged form forat least some of the graphical cursors, outputting the base form of thecursor associated with the anticipated user input to the graphicaldisplay, and detecting a detected user input. If the detected user inputcorresponds with the anticipated user input associated with theoutputted cursor, the method includes outputting the engaged form of thecursor associated with the anticipated user input to the graphicaldisplay, so as to confirm to the viewer a correspondence between theanticipated user input and the detected user input.

The method may include outputting to the graphical display a graphicalemphasis of the base form of the cursor associated with the anticipateduser input so as to indicate to the viewer a non-correspondence betweenthe anticipated user input and the detected user input, if the detecteduser input does not correspond with the anticipated user input. Themethod may include outputting to the graphical display an errorindication so as to indicate to the viewer a non-correspondence betweenthe anticipated user input and the detected user input, if the detecteduser input does not correspond with the anticipated user input.

The method may include establishing a base form and a hover form for atleast some of the graphical cursors, outputting the base form of thecursor associated with the anticipated user input to the graphicaldisplay, and detecting a detected user hover. If the detected user hovercorresponds with the anticipated user input associated with theoutputted cursor, the method includes outputting the hover form of thecursor associated with the anticipated user input to the graphicaldisplay, so as to confirm to the viewer a correspondence between theanticipated user input and the detected user hover.

The method may include outputting to the graphical display a graphicalemphasis of the base form of the cursor associated with the anticipateduser input so as to indicate to the viewer a non-correspondence betweenthe anticipated user input and the detected user hover, if the detecteduser hover does not correspond with the anticipated user input. Themethod may include outputting to the graphical display an errorindication so as to indicate to the viewer a non-correspondence betweenthe anticipated user input and the detected user hover, if the detecteduser hover does not correspond with the anticipated user input.

The user inputs may include hand gesture inputs. The user inputs mayinclude free space hand gesture inputs.

For at least one of the cursors, the base form thereof may begraphically hollow and the engaged form thereof is graphically filled.For at least one of the cursors, the hover form thereof may begraphically compacted compared to the base form thereof.

The user inputs may include a single touch input and the cursors mayinclude a single touch cursor associated with the single touch input,with the single touch cursor being graphically indicative of a one-pointtouch to a designated position in space. The single touch cursor mayinclude a circle with crosshair marks disposed around a peripherythereof, the circle being graphically indicative of the designatedposition and the one-point touch thereto.

The user inputs may include a double touch input and the cursors mayinclude a double touch cursor associated with the double touch input,with the double touch cursor being graphically indicative of a two-pointtouch to a designated position in space.

The user inputs may include a single touch input and the cursors mayinclude a single touch cursor associated with the single touch input,with the single touch cursor including a circle with crosshair marksdisposed around a periphery thereof, and the double touch cursorincluding a circle larger than the single touch cursor circle withcrosshair marks disposed around a periphery thereof, with the doubletouch cursor circle being graphically indicative of the designatedposition and the double touch cursor circle being larger beinggraphically indicative of the two-point touch thereto.

The double touch cursor may include two at least partial circlesmutually connected with crosshair marks disposed around a peripherythereof, with the at least partial circles being graphically indicativeof the designated position and the two at least partial circles beinggraphically indicative of the two-point touch thereto.

The double touch cursor may include two circles mutually proximate withcrosshair marks disposed around a perimeter thereof, with the circlesbeing graphically indicative of the designated position, and the twocircles being graphically indicative of the two-point touch thereto.

The double touch cursor may include a circle with paired crosshair marksdisposed around a periphery thereof, with the circle being graphicallyindicative of the designated position and the double crosshair marksbeing graphically indicative of the two-point touch thereto.

The user inputs may include a single point directional swipe input andthe cursors may include a single point directional swipe cursorassociated with the single point directional swipe input, with thesingle point directional swipe cursor being graphically indicative of aone-point swipe in a designated direction.

The single point directional swipe cursor may include a circle with atleast one arrow disposed around a periphery thereof, with the at leastone arrow being graphically indicative of the designated direction andthe circle being graphically indicative of the one-point swipe in thedesignated direction.

The user inputs may include a double point directional swipe input andthe cursors may include a double point directional swipe cursorassociated with the double point directional swipe input, with thedouble point directional swipe cursor being graphically indicative of atwo-point swipe in a designated direction.

The user inputs may include a single point directional swipe input andthe cursors may include a single point directional swipe cursorassociated with the single point directional swipe input, with thesingle point directional swipe cursor including a circle with at leastone arrow disposed around a periphery thereof, and the double pointdirectional swipe cursor including a circle larger than the single pointdirectional swipe cursor circle with at least one arrow disposed arounda periphery thereof. The at least one arrow disposed around theperiphery of the double point circle may be graphically indicative ofthe designated direction and the double point circle being larger may begraphically indicative of the two-point swipe in the designateddirection.

The double point directional swipe cursor may include two at leastpartial circles mutually connected with at least one arrow disposedaround a periphery thereof, with the arrow being graphically indicativeof the designated direction and the two at least partial circles beinggraphically indicative of the two-point swipe in the designateddirection.

The double point directional swipe cursor may include two circlesmutually proximate with at least one arrow disposed around a peripherythereof, with the arrow being graphically indicative of the designateddirection and the two circles being graphically indicative of thetwo-point swipe in the designated direction.

The double point directional swipe cursor may include a circle with atleast one pair of arrows disposed around a periphery thereof, with thepair of arrows being graphically indicative of the designated directionand the two-point swipe in the designated direction.

The user inputs may include a single point press input and the cursorsmay include a single point press cursor associated with the single pointpress input, with the single point press input cursor being graphicallyindicative of a one-point press at a designated position.

The one finger press cursor may include a circle, with the circle beinggraphically indicative of the designated position and the one-pointpress thereto.

The user inputs may include a double point press input and the cursorsmay include a double point press cursor associated with the double pointpress input, with the double point press input cursor being graphicallyindicative of a two-point press at a designated position.

The user inputs may include a single point press input and the cursorsmay include single point press cursor associated with the single pointpress input, with the single point press cursor including a circle andthe double point press cursor including a circle larger than the singlepoint directional swipe cursor circle, and with the double point presscircle being graphically indicative of the designated position and thedouble point press circle being larger being graphically indicative ofthe two-point touch thereto.

The double point press cursor may include two at least partial circlesmutually connected, with the at least partial circles being graphicallyindicative of the designated position and the two at least partialcircles being graphically indicative of the two-point touch thereto.

The double point press cursor may include two circles mutuallyproximate, with the circles being graphically indicative of thedesignated position and the two circles being graphically indicative ofthe two-point touch thereto.

The user inputs may include a single point press and hold input and thecursors may include a single point press and hold cursor associated withthe single point press and hold input, with the single point press andhold input cursor being graphically indicative of a one-point press andhold at a designated position.

The one finger press and hold cursor may include a circle with at leastone concentric ring disposed thereabout, with the circle beinggraphically indicative of the designated position and the one-pointpress thereto, and the concentric ring being graphically indicative ofthe press and hold.

The inputs may include a double point press and hold input and thecursors may include a double point press and hold cursor associated withthe double point press and hold input, with the double point press andhold input cursor being graphically indicative of a two-point press at adesignated position.

The user inputs may include a single point press and hold input and thecursors may include single point press and hold cursor associated withthe single point press and hold input, with the single point press andhold cursor including a circle with at least one concentric ringdisposed thereabout and the double point press and hold cursor includinga circle larger than the single point press and hold cursor circle withat least one concentric ring disposed thereabout, and with the doublepoint press circle being graphically indicative of the designatedposition, the double point press circle being larger is graphicallyindicative of the two-point touch thereto, and the at least oneconcentric ring being graphically indicative of the press and hold.

The double point press cursor may include two at least partial circlesmutually connected with two corresponding at least partial concentricrings disposed thereabout, with the at least partial circles beinggraphically indicative of the designated position, the two at leastpartial circles being graphically indicative of the two-point touchthereto, and the at least partial concentric rings being graphicallyindicative of the press and hold.

The double point press cursor may include two circles mutually proximatewith two corresponding concentric rings disposed thereabout, with thecircles being graphically indicative of the designated position, the twocircles being graphically indicative of the two-point touch thereto, andthe concentric rings being graphically indicative of the press and hold.

The user inputs may include a pinch in input and the cursors may includea pinch in cursor associated with the pinch in input, with the pinch incursor being graphically indicative of a two-point distance closingmotion.

The pinch in cursor may include two arrows mutually proximate andoriented point to point, with the arrows being graphically indicative ofthe two-point distance closing motion.

The pinch in cursor may include a visible perimeter enclosing thearrows, with the visible perimeter enclosing the arrows is graphicallyindicative of the two-point distance closing motion.

The pinch in cursor may include two circles mutually proximate.

The pinch in cursor may include a visible perimeter enclosing thecircles, with the visible perimeter enclosing the circles beinggraphically indicative of the two-point distance closing motion.

The user inputs may include a pinch out input and the cursors mayinclude a pinch out cursor associated with the pinch out input, with thepinch out cursor being graphically indicative of a two-point distanceopening motion.

The pinch out cursor may include two arrows mutually proximate andoriented base to base, with the arrows being graphically indicative ofthe two-point distance opening motion.

The pinch out cursor may include a visible perimeter between the arrows,with the visible perimeter between the arrows being indicative of thetwo-point distance opening motion.

The pinch out cursor may include two circles mutually proximate.

The pinch out cursor may include a visible perimeter between the circle,with the visible perimeter between the circles being indicative of thetwo-point distance opening motion.

In another embodiment, a machine-implemented method is provided thatincludes establishing a one-finger input, a two-finger input, a pinch-ininput, and a pinch-out input in a processor, the user inputs includingfree space hand gesture inputs. The method includes establishing a baseform, a hover form, an engaged press form, and an engaged press-and-holdform for the one-finger input in the processor, establishing a baseform, an engaged press form, and an engaged swipe form for thetwo-finger input in the processor, establishing a base form and anengaged form for the pinch-out input in the processor, and establishinga base form and an engaged form for the pinch-in input in the processor.

The method includes establishing a plurality of graphical cursors andassociating each of the cursors with at least one of the user inputs inthe processor.

The graphical cursors include a base form one-finger input graphicalcursor including a hollow circle with dashed crosshair marks disposedaround a periphery thereof associated with the base form of theone-finger input, a hover form one-finger input graphical cursorincluding a hollow circle with contracted dashed crosshair marksdisposed around a periphery thereof associated with the hover form ofthe one-finger input, an engaged form one-finger press input graphicalcursor including a filled circle associated with the engaged press formof the one-finger input, and an engaged form one-finger press-and-holdinput graphical cursor including a filled circle with at least oneconcentric circle thereabout associated with the engaged press-and-holdform of the one-finger input.

The graphical cursors include a base form two-finger input graphicalcursor including a hollow circle with arrow marks disposed around aperiphery thereof associated with the base form of the two-finger input,an engaged form two-finger press input graphical cursor including afilled circle with arrow marks disposed around a periphery thereofassociated with the engaged press form of the two-finger input, and anengaged form two-finger swipe input graphical cursor including a filledcircle with arrow marks disposed around a periphery thereof with atleast one of the arrow marks including at least two arrows associatedwith the engaged press-and-hold form of the two-finger input.

The graphical cursors also include a base form pinch-out input graphicalcursor including a hollow dashed circle with arrow marks disposed arounda periphery thereof and pointing outward therefrom associated with thebase of the pinch-out input, an engaged form pinch-out input graphicalcursor including a filled dashed circle with arrow marks disposed arounda periphery thereof and pointing outward therefrom with each of thearrow marks including at least two arrows associated with the engagedform of the pinch-out input, a base form pinch-in input graphical cursorincluding a hollow dashed circle with arrow marks disposed within aperiphery thereof and pointing inward therefrom associated with the baseof the pinch-in input, and a base form pinch-in input graphical cursorincluding a filled dashed circle with arrow marks disposed within aperiphery thereof and pointing inward therefrom with each of the arrowmarks including at least two arrows associated with the engaged form ofthe pinch-in input.

Each of the graphical cursors is graphically distinctive from the othercursors and is and graphically indicative of the user inputs associatedtherewith, so as to identify to a viewer of the graphical display theanticipated user input.

The method further includes anticipating an anticipated user input inthe processor, and outputting to a graphical display the base form ofthe cursor associated with the anticipated user input.

The method includes detecting a user hover, and outputting to thegraphical display the hover form of the cursor associated with theanticipated user input, so as to confirm to the viewer a match betweenthe anticipated user input and the detected user hover if the detecteduser hover corresponds with the anticipated user input associated withthe outputted cursor and the outputted cursor includes the hover form.

The method further includes detecting a user input, and outputting tothe graphical display the engaged form of the cursor associated with theanticipated user input, so as to confirm to the viewer a match betweenthe anticipated user input and the detected user input, if the detecteduser input corresponds with the anticipated user input associated withthe outputted cursor and the outputted cursor includes the engaged form.

In another embodiment, an apparatus is provided that includes aprocessor, a graphical display in communication with the processor, andan input receiver in communication with the processor. The apparatusincludes a plurality of user input definitions for user inputs disposedon the processor and a plurality of graphical cursor definitions forgraphical cursors disposed on the processor, each graphical cursor beingassociated with at least one of the user inputs. Each of the graphicalcursors is graphically distinctive from the other cursors and is andgraphically indicative of the user inputs associated therewith. Theapparatus includes a user input anticipator adapted to anticipateanticipated user input to the input receiver, and an outputter adaptedto output the graphical cursor associated with the anticipated userinput to the graphical display, so as to identify to a viewer of thegraphical display the anticipated user input.

At least some of the input definitions may include a base form and anengaged form. The apparatus may include a user input detector adapted todetect a detected user input, and a user correspondence determineradapted to determine whether the detected user input corresponds withthe anticipated user input. The outputter may be adapted to output theengaged form of the cursor associated with the anticipated user input tothe graphical display if the detected user input corresponds with theanticipated user input, so as to confirm to the viewer a correspondencebetween the anticipated user input and the detected user input.

At least some of the input definitions may include a base form and ahover form. The apparatus may include a user hover detector adapted todetect a detected user hover, a correspondence determiner adapted todetermine whether the detected user input corresponds with theanticipated user input. The outputter may be adapted to output the hoverform of the cursor associated with the anticipated user input to thegraphical display if the detected user hover corresponds with theanticipated user input, so as to confirm to the viewer a correspondencebetween the anticipated user input and the detected user hover.

The graphical display may include a stereo near eye display, the inputreceiver may include an imager, and the apparatus may include a frameadapted to be worn on a head of the viewer, the graphical display andthe input receiver being disposed thereon. The frame may be configuredsuch that when the viewer wears the frame the stereo near eye display isdisposed proximate and facing eyes of the viewer and the input receiveris disposed so as to receive input from in front of the viewer.

In another embodiment, an apparatus is provided that includes aprocessor, means for outputting graphical content to a viewer incommunication with the processor, means for establishing a plurality ofuser inputs in the processor, and means for establishing a plurality ofgraphical cursors and associating each of the cursors with at least oneof the user inputs in the processor. The apparatus also includes meansfor anticipating an anticipated user input, and means for outputting thecursor associated with the anticipated user input. Each of the graphicalcursors is graphically distinctive from the other cursors and is andgraphically indicative of the user inputs associated therewith, so as toidentify to a viewer of the graphical display the anticipated userinput.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Like reference numbers generally indicate corresponding elements in thefigures.

FIG. 1 shows example cursors for prompting various inputs, in graphicalform.

FIG. 2 shows example cursors for providing feedback regarding variousinputs being enabled, in graphical form.

FIG. 3 shows example cursors for providing feedback regarding variousinputs being hovered, in graphical form.

FIG. 4 shows example cursors for providing feedback regarding variouserror inputs, in graphical form.

FIG. 5 shows an example method for interface control with prompt andfeedback, in flow chart form.

FIG. 6A through FIG. 6D show another example method for interfacecontrol with prompt and feedback, referring to example cursors, in flowchart form.

FIG. 7A through FIG. 7C show another example method for interfacecontrol with prompt and feedback, specific to the example of handgesture inputs to a head mounted display, in flow chart form.

FIG. 8 shows an example suite of graphical cursors for an exampleinterface, in graphical form.

FIG. 9 shows example cursors in one-finger and two-finger variations, ingraphical form.

FIG. 10 shows example cursors exhibiting variations of swipeindications, in graphical form.

FIG. 11 shows example cursors exhibiting animations, in graphical form.

FIG. 12 shows further example cursors exhibiting animations, ingraphical form.

FIG. 13 shows an example integral apparatus for interface control withprompt and feedback, in schematic form.

FIG. 14 shows another example integral apparatus for interface controlwith prompt and feedback, in schematic form.

FIG. 15 shows an example integral apparatus for interface control withprompt and feedback, in perspective view.

FIG. 16 shows a block diagram of a processing system that may implementoperations of various embodiments.

DETAILED DESCRIPTION OF THE INVENTION

In at least certain embodiments, cursors are provided (e.g. displayed toa user) that graphically indicate what input(s) may be anticipated,and/or that graphically indicate whether inputs being entered by a usermatch or do not match the inputs that are anticipated. Morecolloquially, the user is shown a cursor form that suggests the “right”input; if the user enters the “right” input the user is shown a cursorform that confirms detection of that “right” input, while if the userenters the “wrong” input the user is shown a cursor form that indicatesdetection of that “wrong” input.

Broadly speaking, presenting a user with a cursor regardless of thecursor's form may provide the user with information regarding whereand/or when input from that user will be accepted. For example, considera digital “desktop” environment wherein a user may click a mouse to openfiles, initiate programs, activate functions, etc. A cursor may bedisplayed in the form of an arrow to indicate where and when a mouseclick, tap, etc. would be received if applied by the user.

When the type of input that a user may apply in a given situation islimited, then then designating time and position with a cursor mayprovide sufficient guidance to a user to reliably enter suitable inputs.For example, considering a mouse where the only input available is“click”, then displaying a cursor that indicates the position at which aclick will be applied at a given time may be sufficient for the user toapply click inputs.

However, if a user may apply multiple distinct inputs to an interface,merely indicating a position for a given time may leave some ambiguityfor the user. For example, consider an arrangement wherein free spacegesture inputs are used to control a system, such as a head mounteddisplay presenting virtual reality, augmented reality, etc. to a user.If the system can discriminate between a gesture carried out with onefinger and a similar gesture carried out with two fingers, then thenumber of gestures available for use as inputs is greater. However, ifseveral different gestures may be used as inputs, then some of thoseinputs may only be suitable in certain circumstances, and it may not beclear to the user which input(s) are suitable.

Such ambiguity may be ameliorated or avoided by providing a user withindications as to which input may be most suitable for a given time andplace. In certain embodiments, such an indication may be providedgraphically, through the user of a suite of cursors rather than a singlecursor. This may be in addition to the use of a cursor to show whenand/or where input will be received or applied. For example, one cursorin a suite may indicate that gesture inputs made using one finger areexpected at a particular time and location, while another cursor in thesuite may indicate that gesture inputs made using two fingers areexpected.

In more colloquial terms, where a time-and-place only cursor may advisea user that “your input will go here”, an input-type cursor may furtheradvise a user that “and a two-finger input is suitable”. As the numberof possible inputs increases, such additional guidance may beincreasingly useful.

A distinction is drawn between cursors that merely depict a type ofinput that will be entered. For example, an image editing program mightdisplay a cursor in the form of a pen nib pattern to identify that a“pen” tool has been selected. However, this does not indicate ananticipated form of input to the user, but rather is specific to whattool in fact will be used. No matter what the user does with the “pen”tool, a color will be applied in the form of a pen line onto the imagefile. The user has only the option to either enter pen input, or choosea different tool. No feedback regarding whether the user applied the“right input” or the “wrong input” is possible, since the user isconstrained only to pen input; the user cannot apply anything else sothere is no “right input” or “wrong input”.

By contrast, in various embodiments as described herein a user may beshown a cursor graphically indicative of some type of anticipated input(or recommended input, etc.). The user thus may be advised of a suitableinput, but still may choose to enter some different input. In addition,the user may be advised as to whether the input they enter (or begin toenter, etc.) is suitable, again by being shown a cursor that isgraphically indicative of the correct input, or an incorrect (or atleast unexpected) input, etc.

Thus, rather than merely showing what must happen, various embodimentsmay prompt a user regarding input that should be entered, and/or providefeedback to the user regarding their input.

Typically, such prompting and feedback may utilize a group of cursors,and/or one or more cursors with multiple different forms. Collectively,such a group of cursors and forms thereof may be referred to as a suite.

Cursors within a suite may be visually distinct, so as to indicate to auser which inputs may be suitable. With reference to FIG. 1, therein isshown several cursors 102 through 156. If all of the illustrated cursors102 through 156 were used together in a particular system, the cursors102 through 156 collectively may be considered to be a suite. However,the cursors 102 through 156 are shown as examples, and are not requiredto be used together. Likewise, the example cursors 102 through 156should not be considered limiting, and other arrangements may be equallysuitable.

Various levels of discrimination may be suitable. In FIG. 1, a generalone-finger cursor 102 and a general two-finger cursor 108 are shown.(Where additional cursors 114 through 156 are present, cursors 102 and108 may be further specified, e.g. as a one-finger touch cursor 102 anda two-finger touch cursor 108, though this is an example only.)

Typically though not necessarily, the one-finger cursor 102 may beassociated with one-finger gesture inputs (e.g. being displayed oneone-finger gestures are suitable, anticipated, etc.) and the two-fingercursor may be associated with two-finger gesture inputs. In certainembodiments only cursors 102 and 108 (or analogs thereof) may be used;that is, it may be that cursors 102 and 108 discriminate betweenone-finger and two-finger inputs, and indicate to a user whether aone-finger input or a two-finger input is suitable and/or anticipated atsome time and place, without necessarily providing further informationas two what specific one-finger and two-finger inputs may be suitableand/or anticipated. The one-finger cursor 102 and two-finger cursor 108may form a suite in themselves, without necessarily including othercursors (such as cursors 114 through 156 also in FIG. 1). However, asdescribed below and as visible in FIG. 1, additional cursors 114 through156 also may be present.

As may be seen, the one-finger cursor 102 includes a hollow circle withdashed crosshairs extending in cardinal directions from the centerthereof. The two-finger cursor 108 includes two hollow circles, againwith dashed crosshairs extending in cardinal directions from the centerthereof. The one-finger cursor 102 and two-finger cursor 108 aregraphically distinctive from one another (e.g. the one-finger cursor 102having one circle while the two-finger cursor 108 has two circles), andare graphically indicative of the user inputs associated therewith (e.g.a single circle indicating the use of one fingertip for the one-fingercursor 102, and two circles indicating the use of two fingertips for thetwo-finger cursor 108).

It is noted that terms such as “one-finger” and “two-finger” are usedherein in places as examples, for clarity. More broadly, inputs and/orcursors associated with inputs may be considered as exhibiting “onepoint of manipulation”, “two points of manipulation”, etc. The use offingers and/or fingertips as points of manipulation may be suitable forcertain embodiments. However, embodiments are not limited only tofingers or fingertips, and other arrangements, including but not limitedto styluses, knuckles (as opposed to fingertips), full hands, etc. maybe equally suitable.

Still with reference to FIG. 1, a one-finger swipe cursor 114 and atwo-finger swipe cursor 120, a one-finger press cursor 126 and atwo-finger press cursor 132, a one-finger press-and-hold cursor 138 anda two-finger press-and-hold cursor 144, a pinch in cursor 150 and apinch out cursor 156 also are shown. As noted, not all cursors 102through 156 must be present in a given embodiment. However, the use ofseveral cursors 102 through 156 as shown in FIG. 1 may provide greaterdiscrimination between different possible inputs, and thus more guidanceto a user as to what inputs are suitable, anticipated, required, etc.

Where one-finger cursor 102 and two-finger cursor 108 may be associatedwith general one and two-finger inputs (or to one and two-finger inputsnot otherwise specified, etc.), other cursors 114 through 156 may bespecific to more particular inputs.

For example, the one-finger swipe cursor 114 and two-finger swipe cursor120 may be associated with swipes, that is, moving one or two fingertipsrespectively through space as inputs. As may be seen, the one-fingerswipe cursor 114 includes a hollow circle with arrows arranged incardinal directions around the center thereof. The two-finger swipecursor 120 includes two hollow circles, again with arrows arranged incardinal directions around the center thereof. The one-finger swipecursor 114 and two-finger swipe cursor 120 are graphically distinctivefrom one another and from the other cursors 102, 108, and 126 through156 in FIG. 1 and are graphically indicative of the user inputsassociated therewith (e.g. a single circle indicating the use of onefingertip for the one-finger swipe cursor 114 with arrows indicatingmotions, and two circles indicating the use of two fingertips for thetwo-finger swipe cursor 120 again with arrows indicating motions).

Similarly, the one-finger press cursor 126 and two-finger press cursor132 may be associated with presses, that is, applying one or twofingertips to some point as inputs. As may be seen, the one-finger presscursor 126 includes a hollow circle without further marking. Thetwo-finger press cursor 132 includes two hollow circles, again withoutfurther marking. The one-finger press cursor 126 and two-finger presscursor 132 are graphically distinctive from one another and from theother cursors 102 through 132 and 138 through 156 in FIG. 1, and aregraphically indicative of the user inputs associated therewith (e.g. asingle circle indicating the use of one fingertip for the one-fingerpress cursor 126 and two circles indicating the use of two fingertipsfor the two-finger press cursor 132, not otherwise marked to indicate asimple press).

Likewise, the one-finger press-and-hold cursor 138 and two-fingerpress-and-hold cursor 144 may be associated with presses-and-holds, thatis, applying one or two fingertips to some point in space and remainingthere for some period, as inputs. As may be seen, the one-fingerpress-and-hold cursor 138 includes a hollow circle with three concentricrings encompassing the circle, and the two-finger press-and-hold cursor144 includes two hollow circles, with three concentric partial ringsencompassing both circles. The one-finger press-and-hold cursor 138 andtwo-finger press-and-hold cursor 144 are graphically distinctive fromone another and from the other cursors 102 through 132, 150, and 156,and are graphically indicative of the user inputs associated therewith(e.g. for the one-finger press-and-hold cursor 138 a single circleindicating the use of one fingertip for the press and concentric ringsindicating the hold, for the two-finger press-and-hold cursor 144 twocircles indicating the use of two fingertips and concentric partialrings indicating the hold).

In addition, the pinch in cursor 150 and pinch out cursor 156 may beassociated with pinches, that is, moving two fingertips towards or apartfrom one another. As may be seen, the pinch in cursor 150 includes adashed hollow circle enclosing two arrows pointing toward one another,while the pinch out cursor 156 includes a dashed hollow circle betweentwo arrows pointing away from one another.

The pinch in cursor 150 and pinch out cursor 156 are graphicallydistinctive from one another and from the other cursors 102 through 144,and are graphically indicative of the user inputs associated therewith(e.g. for the pinch in cursor 150 a large dashed circle indicating abroad initial spread with arrows indicating inward motion, while for thepinch out cursor 156 a small dashed circle indicating a narrow initialspread with arrows indicating outward motion).

As may be seen in FIG. 1, the one-finger cursors 102, 114, 126, and 138are graphically similar to the corresponding two-finger cursors 108,120, 132, and 144. That is, the one-finger swipe cursor 114 isgraphically similar to the two-finger swipe cursor 120, with bothincluding one or more circles and arrows arranged in cardinaldirections, though the two-finger swipe cursor 120 has two circles whilethe one-finger swipe cursor 114 has one circle. This may be useful forcertain embodiments, for example so as to provide similar and/orfamiliar graphical information to the user for inputs having similarassociations. However, such similarity is not required, and otherarrangements may be suitable.

Likewise, the one-finger cursors 102, 114, 126, and 138 are graphicallysimilar to one another (though still graphically distinct), and thetwo-finger cursors 108, 120, 132, and 144 also are graphically similarto one another (though still graphically distinct). For example, each ofthe one-finger cursors 102, 114, 126, and 138 exhibits one centralcircle, and each of the two-finger cursors 108, 120, 132, and 144exhibits two circles side-by-side. Again, this may be useful for certainembodiments, for example so as to provide similar and/or familiargraphical information to the user for inputs using similar handconfigurations. However, such similarity also is not required, and otherarrangements may be suitable.

Further, the pinch in cursor 150 and pinch out cursor 156 aregraphically similar to one another (though still graphically distinct).For example, the pinch in cursor 150 and pinch out cursor 156 eachexhibit a dashed circle with arrows. This may be useful for certainembodiments, for example so as to provide similar and/or familiargraphical information to the user for inputs using similar motionsand/or performing similar (though in the case of cursors 150 and 156,reversed) functions. However, such similarity also is not required, andother arrangements may be suitable.

Graphical similarities based on features such as the number of fingersin a gesture, the associated inputs, and/or the type of motion (if any)may be suitable for certain embodiments, but are not required. Graphicalsimilarities based on other features, or no such graphical similarities,also may be suitable.

Considering FIG. 1 collectively, the cursors 102 through 156 showntherein may provide prompts for a range of different types of input:non-specified one-finger and two-finger inputs, one-finger andtwo-finger swipes, one-finger and two-finger presses, one-finger andtwo-finger press-and-holds, and inward and outward pinches. Thus, a usermay be prompted with considerable granularity as to what inputs areanticipated, suitable, required, etc. at a given time and place, bygraphically indicating the appropriate inputs through display of acursor associated with those appropriate inputs.

It is emphasized that the particular appearances, forms, etc. of thecursors 102 through 156 as shown in FIG. 1 (and likewise in otherillustrations herein) are examples only, and are not limiting. Theindividual appearances of various cursors 102 through 156 may beconsidered decorative; however, the association of those cursors thathave particular appearances with particular inputs nevertheless may beuseful. That is, regardless of what (for example) a pinch out cursor 156looks like, the existence and graphical distinctiveness of a pinch outcursor 156 may enable prompting a user for a particular type of input.

It is noted that the term “graphically indicative” may be a matter ofinterpretation, experience, culture, etc. Graphical indications ofvarious motions, functions, etc. may vary, and may even be arbitrary(e.g. being defined for a particular suite of cursors). For example,while the cardinal arrows in the one-finger swipe cursor 114 andtwo-finger swipe cursor 120 in FIG. 1 may be considered to graphicallyindicate motion, this is an example only. Shapes, arrangements, etc.that may be understood as indicating motion may vary. So long as motionis graphically indicated in some fashion, whether arrows, rays, motionlines, etc. are used may vary from one embodiment to another. Likewise,whether circles are used to indicate fingertips (or other points), etc.also may vary. So long as the functionality in conveying information isachieved, the cosmetic appearance of whatever “vehicle” is used toindicate that information is not limited.

In particular, it is noted that though the various cursors 102 through156 in FIG. 1 are shown as being distinguished by shape, otherdistinctions may be equally suitable. For example, cursors may bedistinguished in whole or in part by color, through animation, throughaudio cues, etc.

In FIG. 1, examples are shown of various cursors 102 through 156 asdistinguished by type of input. That is, a one-finger swipe cursor 114may be displayed to a user to prompt a one-finger swipe input. However,cursors also may have two or more forms, so as to provide additionalinformation to the user, including but not limited to confirmation thatthe input from the user matches the anticipated input. For example, acursor may have a base form, as may be displayed to a user to prompt atype of input from the user, and also may have an engaged form as may bedisplayed while a user enters input matching the anticipated input(and/or for some period after entering input matching the anticipatedinput.

With reference now to FIG. 2, engaged forms of cursors 204 through 258at least somewhat similar to the cursors 102 through 156 in FIG. 1,though not identical thereto. If the cursors 102 through 156 in FIG. 1are considered to represent base forms, the cursors 204 through 258 maybe considered to represent engaged forms.

As may be seen, each of the engaged form cursors 204 through 258 in FIG.2 are at least somewhat similar to the base form cursors 102 through 156in FIG. 1, in terms of general shape and configuration. However, wherethe base form cursors 102 through 156 in FIG. 1 include hollow circles,the engaged form cursors 204 through 258 in FIG. 2 include solidcircles. More colloquially, in FIG. 2 the cursors 204 through 258 are“filled in”.

The cursors 204 through 258 include an engaged form one-finger cursor204, an engaged form two-finger cursor 210, an engaged form one-fingerswipe cursor 216, an engaged form two-finger swipe cursor 222, anengaged form one-finger press cursor 228, an engaged form two-fingerpress cursor 234, an engaged form one-finger press-and-hold cursor 240,an engaged form two-finger press-and-hold cursor 246, an engaged formpinch in cursor 252, and an engaged form pinch out cursor 258.

An engaged form cursor 204 through 258 may provide positive confirmationthat the input that the user is entering corresponds with the input thatwas anticipated. Thus, the user would be prompted for a type of input bydisplaying a graphical cursor associated with that input, such as one ofthe base form cursors 102 through 156 shown in FIG. 1. If the user thenenters the input associated with that displayed graphical cursor—if thedetected input matches the anticipated input—an engaged form cursor 204through 258 may be displayed to the user, so as to provide positive (andin this example, visual) confirmation that the user is entering theexpected input.

From the user's point of view, the user would see a base form cursor 102through 156, and would begin to enter the type of input associated withthat base form cursor 102 through 156. The user then would see that thebase form cursor 102 through 156 has changed to (or been replaced by)the engaged form of that cursor 204 through 258. Having seen that theengaged form of the cursor 204 through 258 is present, the user mayvisually confirm that he or she is entering the “correct” (or at leastan anticipated) type of input.

The comments made above with regard to the appearance of various baseform cursors and the similarities or differences in appearance betweenbase form cursors also apply to the engaged form cursors 204 through 258shown in FIG. 2. To briefly recap, the particulars of appearance ofengaged form cursors 204 through 258 may vary considerably from oneembodiment to another, and although similarities not prohibited and maybe useful for certain embodiments such similarities also are notrequired.

In addition, it is noted that although in the particular examples ofFIG. 1 and FIG. 2 the base form cursors 102 through 156 and engaged formcursors 204 through 258 therein are graphically similar (though stilldistinct), this also is an example and is not required. It may be usefulin at least some embodiments if engaged forms of cursors do resemblebase forms of those cursors, for example to provide continuity, for easeof user recognition, etc., but other arrangements may be equallysuitable.

In particular, though the arrangements in FIG. 1 and FIG. 2 show engagedform cursors 204 through 258 that are “filled in” but otherwise similarto base form cursors 102 through 156, this is an example only. Base formcursors 102 through 156 may be filled in while engaged form cursors 204through 258 are hollow, instead. Base forms of cursors and engaged formsof cursors also may vary in other ways, such as by color, through otherdifference in shape, through animation (e.g. the engaged form isanimated while the base form is not), through transparency/opacity (e.g.the engaged form is transparent while the base form is opaque), etc.

Other cursor forms also may be suitable, in addition to or in place ofbase and engaged. With reference now to FIG. 3, therein is shownexamples of hover forms of cursors 306 through 360. A hover form 306through 360 of a cursor may be displayed for example when a user appearsto be about to initiate an input. Thus, even before the user beginsinput, confirmation may be communicated to the user (e.g. by displayinghover form cursors 306 through 360) that the input he or she ispreparing to enter is the anticipated input.

The term “hover” refers to a notion from two-dimensional digitaldesktops, wherein moving a cursor over some object on the desktop maycause some action related to the desktop object to take place. Analternative term may be “mouse-over”. For example, hovering over animage file may cause the image size, format, creation date, etc. to bedisplayed.

However, as the term “hover” is used herein, hovering is not necessarilylimited only to aligning a cursor with an object on a two-dimensionaldesktop. Rather, hover also may refer to preparing to enter input. Forexample, if a user were to enter a two-finger swipe in free space, forexample as a gestural input for a head mounted display, typically(though not necessarily) the user may move his or her hand toward astarting position for the swipe, may extend two fingers in preparationfor entering the two-finger swipe, etc. Thus it may be possible todetermine with at least some degree of reliability what the user isabout to do, at least for certain inputs and/or certain embodiments.

Hover forms of cursors 306 through 360 are not required, however, nor isthe ability to anticipate an input required (even if hover forms arepresent).

The cursors 306 through 358 include a hover form one-finger cursor 306,a hover form two-finger cursor 312, a hover form one-finger swipe cursor318, a hover form two-finger swipe cursor 324, a hover form one-fingerpress-and-hold cursor 342, a hover form two-finger press-and-hold cursor348, a hover form pinch in cursor 354, and a hover form pinch out cursor360.

As may be seen, FIG. 3 does not show a hover form one-finger presscursor or a hover form two-finger press cursor. This is to emphasizethat hover forms are not required (nor is any particular cursor formnecessarily required), and to point out that even if certain cursorsexhibit certain forms, not all cursors must include all such forms. Thatis, a one-finger swipe cursor may have base, engaged, and hover forms,while a one-finger press cursor may have only base and engaged forms.

The hover form cursors 306 through 360 are graphically similar to thebase form cursors 102 through 156 (though still graphically distinct),though the hover form cursors 306 through 360 in FIG. 3 may be describedas “compacted”. For example the hover forms of the one-finger andtwo-finger cursors 306 and 312 in FIG. 3 include dashed crosshairssimilar to the base forms of the one-finger and two-finger cursors 102and 108 in FIG. 1, but drawn inward towards the respective centers.Likewise, the arrows in the hover form one-finger and two-finger swipecursors 318 and 324 are drawn in; only two concentric rings/partialrings are present in the hover form one-finger and two-fingerpress-and-hold cursors 342 and 348; and the circles in the hover formpinch in and pinch out cursors 354 and 360 are shrunken and no longerdashed compared to FIG. 1.

Again, hover form cursors are not limited only to the arrangements shownin FIG. 3, nor to being compacted compared with base form cursors, noreven to sharing a similar variation (compacted or otherwise) comparedwith base form cursors.

As noted previously graphical indication of information may, to at leastsome extent, be arbitrary. FIG. 3 may provide an example thereof, atleast in that a hover and compaction are not necessarily graphicallyrelated. However, if a user is made aware that for a given cursor suitecompaction is used to indicate hover forms, then such an approach may beconsidered to be a graphical indication of the hover form even if noabsolute relationship between compaction of cursors and hovering exists.

Moving on to FIG. 4, yet another example set of cursor forms is shown.In FIG. 4, error forms 405 through 459 are shown. An error form 405through 459 of a cursor may be displayed for example when a user hasentered some form of input that does not match anticipated input. Forexample, if a user has been prompted to enter a pinch in input (e.g. bydisplaying the pinch in base cursor 150 in FIG. 1), but instead enters atwo-finger swipe input, then the error form of the pinch in cursor 453may be displayed (although the error form of the two-finger swipe input423, or some generic error form, etc. might be displayed in additionand/or instead). The user thus may be provided with corrective feedbackindicating that the user's input does not match what is anticipated.

The cursors 405 through 459 include an error form one-finger cursor 405,an error form two-finger cursor 411, an error form one-finger swipecursor 417, an error form two-finger swipe cursor 423, an error formone-finger press cursor 429, an error form two-finger press cursor 435,an error form one-finger press-and-hold cursor 441, an error formtwo-finger press-and-hold cursor 447, an error form pinch in cursor 453,and an error form pinch out cursor 459.

The error form cursors 405 through 459 in FIG. 4 are graphically similarto the base form cursors 102 through 156 in FIG. 1 (though stillgraphically distinct), but the error form cursors 405 through 459 arefilled in and include “X” markings in the circles thereof. Such “X”markings may graphically indicate to the user an error in input.

As previously noted, not all cursors necessarily will include an errorform (or any other particular form). In addition, even when cursors doinclude error forms, not every mismatch between anticipated user inputand detected user input necessarily will be an error, nor will the errorform necessarily be displayed in such case. For example, in at leastsome instances multiple forms of input may be acceptable.

As a more concrete example a photo viewing program may accept two-fingerswipes to change from one photo to another, and pinches in and pinchesout to zoom on the current photo. The anticipated input may be atwo-finger swipe, and a base form of a two-finger swipe cursor (e.g. 126in FIG. 1) may be displayed to the user. However, if the user applies apinch in, the cursor may not display an error form, but may insteaddisplay an engaged form of a pinch in cursor (e.g. 252 in FIG. 2); thedetected input of pinch in may be a valid input, and so may be confirmedas a valid input through displaying an engaged form of a correspondingcursor associated with that valid input, rather than an error form ofthe cursor associated with the anticipated input.

In more colloquial terms, if an input is not an error (even if the inputwas not expected), valid engaged cursor forms may be shown rather thanthe error form of the cursor for the expected input.

Turning now to FIG. 5, at this point it may be illuminating to describein broad terms an example of how various cursors and forms thereof maybe applied. More detailed examples are presented subsequently herein.

In FIG. 5, a user input is anticipated 584.

The “target” of the user input may vary considerably, and is notlimited. User input may be entered to some apparatus, system, etc.,examples including but not limited to a desktop computer, a laptopcomputer, a portable electronic device such as a smart phone, a wearableelectronic device such as a head mounted display, and so forth.

The type of user input also is not limited. User input may include butis not limited to gesture inputs, such as free space gesture inputs inthree dimensions as may be used to control a head mounted display orsimilar apparatus.

Further, the manner by which user input is anticipated is not limited.Typically though not necessarily, user input may be anticipated in thatsome specific type of input is needed at a given time and place, and itis then expected that if input is entered the input will be of the typeneeded. As a more concrete example, if a head mounted display is showinga 3D model of a heart for examination from different perspectives by auser, and the head mounted display is configured such that the 3D modelof a heart rotates in response to one-finger free space swipes enteredby the user, it may be anticipated that one-finger free space swipes maybe so entered. Thus one-finger free space swipes may in such instance beconsidered an anticipated user input.

Continuing in FIG. 5, the anticipated user input is indicated 586 to theuser. Such indication may be graphical, for example through displaying acursor that is associated with the anticipated user input. To continuethe example above regarding a 3D model of a heart, if one-finger freespace swipes are anticipated as input, a base form of a one-finger swipecursor 114 as shown in FIG. 1 may be displayed to the user via the headmounted display.

User input is detected 598. The manner by which user input is detectedis not limited. Typically though not necessarily, some sensor may detectthe input. For example, again considering the example above, the headmounted display may include a depth sensor, depth camera, RGB camera,stereo pair of RGB cameras, etc. so as to detect hand gestures executedby a user in free space. However other arrangements may be equallysuitable.

A determination is made 5100 as to whether the detected user inputmatches the anticipated user input. If the determination 5100 ispositive—if the detected user input does match the anticipated userinput—then the method continues with step 5102. If the determination5100 is negative—if the detected user input does not match theanticipated user input—then the method continues with step 5104.

If the determination 5100 is positive, then the match between thedetected user input and the anticipated user input is confirmed 5102 tothe user. For example, the cursor as displayed in the example of the 3Dheart model may switch from the base form of a one-finger swipe cursor114 as in FIG. 1 to the engaged form of the one finger swipe cursor 216as in FIG. 2, providing a visual confirmation of the match to the user.

Following step 5102 the example method as illustrated in FIG. 5 iscomplete. However, it is noted that additional steps, including but notlimited to repetitions of steps as shown, may be performed in at leastcertain embodiments.

However, if the determination 5100 is negative, then the mismatchbetween the detected user input and the anticipated user input isindicated 5104 to the user. For example, the cursor as displayed in theexample of the 3D heart model may switch from the base form of aone-finger swipe cursor 114 as in FIG. 1 to the error form of the onefinger swipe cursor 417 as in FIG. 2. Alternately, the cursor may remainin the base form of the one-finger swipe cursor 114 as in FIG. 1,without changing to the engaged form of the one finger swipe cursor 216as in FIG. 2; in such case indication of the mismatch may be considereda negative indication, that is, rather than positively advising the userthat the wrong input (or at least an unexpected input) is being entered,confirmation that the user is entering the anticipated input may bewithheld. Positive and/or negative indications may be suitable forvarious embodiments.

The method then returns to step 598, again detecting user input. Thusfor the example of FIG. 5, detected input is not positively confirmed ascorrect until and unless the input matches the anticipated input.

It is noted that outputting an indication of mismatch 5104 to the userdoes not necessarily imply that the user has entered incorrect orunexpected input. A mismatch between detected input and anticipatedinput also may occur if the detected input was incorrectly identified assome other input, if the detected input could not be identified, etc.Certain embodiments may distinguish between such possibilities, or otherpossibilities.

For example, certain forms of input including but not limited togestural input may be subject to what might be referred to as“degeneration”. Consider a two-finger hand gesture swipe input that isdefined so as to be entered with the index and middle finger of one handfully extended and held adjacent one another, with a horizontal motionof the fingertips. Depending on precisely how the gesture is detectedand/or identified, even if some degree of finger separation, bends inthe knuckles, curve or misdirection in the motion path, etc. is presentthe gesture may still be recognized. However, at some point the actualgesture made by a user may differ so much from the defined gesture thatthe actual gesture may no longer be recognizable. It may be said thatthe hand gesture is too “degenerate” to be recognized.

In such instance, the user may have chosen the proper input—that is, theuser intended to enter a “proper” two-finger swipe—but nevertheless maynot actually have entered a two-finger swipe—that is, the hand motionthat the user made was not recognizable as a two-finger swipe within thedefinition thereof. Regardless of whether the user thinks he or sheentered the “correct” gesture, the gesture was not recognized.

In certain embodiments, a case wherein an input is not recognizable as agesture may be treated differently than a case wherein a recognizablebut incorrect gesture is detected. Both situations (gesture notrecognized, gesture recognized but incorrect) may in some sense beerrors, but it may be useful to distinguish between “input notrecognized” and “input incorrect” (or “input not as anticipated”). Thus,embodiments may have multiple forms that may be considered as errorforms, for example an “incorrect input” form, an “input not recognized”form, a “system malfunction” form, etc.

It is also noted that not all embodiments necessarily will include botha confirmation of match 5102 and an indication of mismatch 5104. Incertain embodiments a match may not be confirmed (e.g. no engaged formcursor may be displayed) but a mismatch may be indicated (e.g. with anerror form cursor), or vice versa. While embodiments that confirm amatch and indicate a mismatch are not prohibited, not all embodimentsare required both to confirm match and indicate mismatch.

In sum, in the arrangement of FIG. 5 the user is presented with anindication of what input(s) are expected for a given situation (forexample by displaying a graphical cursor indicative of the expectedinput(s)), the user input is detected, and the user is provided with aconfirmation that the input is as expected and/or an indication that theinput is not as expected.

Now with reference to FIG. 6A through FIG. 6D, another example method isprovided, this example referring more particularly to individual cursorforms such as those previously shown and described with regard to FIG. 1through FIG. 4.

In FIG. 6A, multiple user inputs are established 672. The number of userinputs is not limited, although if only a single user input wereestablished 672 then the question of distinguishing among different userinputs may be moot.

The term “establish” is used broadly herein. It is noted that to“establish” something may, depending on particulars, refer to either orboth the creation of something new (e.g. establishing a business,wherein a new business is created) and the determination of a conditionthat already exists (e.g. establishing the whereabouts of a person,wherein the location of a person who is already present at that locationis discovered, received from another source, etc.). Similarly,establishing a user input may encompass several potential approaches,such as defining the input (e.g. through the use of executableinstructions instantiated on a processor), obtaining the inputs and/orinput definitions from a data store such as a hard drive or solid statedrive, receiving the inputs and/or input definitions via communicationwith some external device, system, etc., and so forth. Otherarrangements also may be equally suitable, and embodiments are notlimited with regard to how either inputs or other actions and/orentities may be established.

In addition, the nature and/or function of the inputs is not limited. Asan example, inputs may define hand gestures performed in free space,and/or sensor data indicating that such inputs have been performed,along with actions to be taken in response to such gestures. As a moreconcrete example, inputs may include a two-finger swipe in free space asdetected by a depth camera and an RGB camera on a head mounted display,which is associated with a processor instruction to rotate a 3D modelbeing displayed. However, this is an example only, and many other inputsmay be suitable.

Continuing in FIG. 6A, base forms of multiple graphical cursors areestablished 674A. The number of graphical cursors also is not limited,although again if only a single graphical cursor were established 672Athen the question of distinguishing among different user inputs may bemoot. In addition, typically though not necessarily, the number ofgraphical cursors may be less than or equal to the number of inputsestablished 672. That is, while a single cursor may be associated withmore than one input (e.g. one cursor for all two-finger swipesregardless of what direction(s) those swipes are in, or one cursor forall swipes regardless of the number of fingers, etc.), typically a giveninput may be associated with no more than one cursor.

Hover forms of multiple graphical cursors are established 674B. Engagedforms of multiple graphical cursors are established 674C. Completedforms of multiple graphical cursors are established 674D. Variousexamples of cursor forms have been shown and described with regard toFIG. 1 through FIG. 4, such as base forms, hover forms, and engagedforms. Completed forms have not been illustrated in FIG. 1 through FIG.4, but may be understood as representing a further form of some cursor;for example, cursors similar to those shown in FIG. 2 but with a checkmark within the filled circle to indicate completion of an input, etc.Not all possible cursor forms are described herein; the number of formsof a cursor is not limited, nor are cursor forms limited only to thoseshown and described herein.

The graphical cursors are associated 682 with at least some of the userinputs. That is, one cursor (possibly in various forms such as base,engaged, etc.) may be associated with all two-finger swipe inputs,another cursor may be associated with pinch in inputs, and so forth. Themanner of association is not limited. Typically though not necessarily,association may be implemented through executable instructionsinstantiated on a processor, for example by “tagging” each inputdefinition as being associated with a cursor, and/or vice versa. Otherarrangements may be equally suitable.

Continuing in FIG. 6B, user input is anticipated 684. The base form ofthe cursor associated with that anticipated input is then outputted 686,for example to a graphical display so as to be viewable by a user.Through outputting 686 the graphical cursor associated with theanticipated input, the user may be advised of the type(s) of input thatare expected in a given situation.

In some conditions two or more different inputs potentially associatedwith two or more different cursors may be suitable. In such instances,some determination may be made as to which of the suitable inputs ismost likely, and the base form of the cursor associated with that inputoutputted 686. Alternately, one of the suitable inputs may be selectedat random, and the base form of the cursor associated with that inputoutputted 686. As another alternative, if suitable inputs are associatedwith two or more cursors, the base forms of those cursors may bedisplayed together, or in sequence (e.g. visibly “cycling through” theseveral cursors), etc. Other arrangements also may be suitable.

The user hover is detected 688. As noted previously, detecting userhover (and the use of hover form cursors) may not be present in allembodiments, but is shown here as an example. If user hover is notdetermined, hover form cursors are not present, etc., then certain stepsas shown in FIG. 6A through FIG. 6D also may not be present (or may beunnecessary); this may be true of other cursor forms as well for variousembodiments not utilizing certain cursor forms. Conversely, embodimentsusing additional cursor forms may include steps addressing thoseadditional cursor forms.

Still with reference to FIG. 6B, a determination is made 690 as towhether the detected user hover matches the anticipated user input. Thatis, does the input that the user appears to be “about to do” correspondwith the input that is anticipated? If the determination 690 ispositive—if the detected user hover matches the anticipated userinput—then the method continues with step 692. If the determination 690is negative—if the detected user hover does not match the anticipateduser input—then the method continues with step 694.

If the determination 690 is positive, the hover form of the cursorassociated with the anticipated input is outputted 692, for example to agraphical display. Through outputting 692 the hover form of thegraphical cursor that is associated with a hover that matches theanticipated input, the user may receive confirmation that the input heor she is about to enter (or is detected as being about to enter) issuitable (or at least is as expected).

If the determination 690 is negative, the base form of the cursorassociated with the anticipated input is emphasized and outputted 694,for example to a graphical display. Through emphasizing and outputting694 the base form of the graphical cursor that is associated with ahover that matches the anticipated input, the user may be advised thatthe input he or she is about to enter (or is detected as being about toenter) may be unsuitable (or at least may be unexpected).

With regard to emphasizing the base form, emphasis may be applied inmany ways. For certain embodiments, the base form may be enlarged.Alternately, the base form may be outputted with a different and/or morenoticeable color, with a higher degree of opacity, while blinking oranimated, etc. Emphasis also may include non-visual cues such as audiblesounds (e.g. an “error beep”), etc. Emphasis may include text messages(e.g. “error”, “incorrect input”, “input not recognized”, “input cannotbe executed”, etc.) in addition to or instead of graphical or othersensory signals. The type of emphasis is not limited, and may varyconsiderably from one embodiment to another.

Emphasizing the base form and using an error form may to some degreeoverlap. For example, if the base form of a cursor is a shape displayedin white and the error form is the same shape displayed in red, then inpractice this may be equivalent to emphasizing the base form by changingthe base form's color to red. However, not all possible types ofemphasis are necessarily similar to error forms, nor vice versa.

As shown in FIG. 6B, one the base form of the cursor has been emphasizedand outputted 694, the method returns to again detecting the user hover688. This may be suitable for certain embodiments, for example so as toprovide the user an opportunity to adjust his or her hover (e.g. changethe input they are about to give). However, such a loop is not required,and in certain embodiments it may be suitable to output 694 theemphasized base form of the cursor and move on (in the example of FIG.6A through FIG. 6D, this may correspond with continuing to step 698 inFIG. 6C rather than returning to step 688 in FIG. 6B); this mayrepresent the user being advised of the mismatch between hover andanticipated input, without necessarily requiring that the user adjusthis or her hover.

Now with reference to FIG. 6C, the user input is detected 698.

A determination is made 6100 as to whether the detected user inputmatches the anticipated user input. That is, does the input entered bythe user (or at least initiated by the user) correspond with the inputthat is anticipated? If the determination 6100 is positive—if thedetected user input matches the anticipated user input—then the methodcontinues with step 6102. If the determination 6100 is negative—if thedetected user input does not match the anticipated user input—then themethod continues with step 6104.

If the determination 6100 is positive, the engaged form of the cursorassociated with the anticipated input is outputted 6102, for example toa graphical display. Through outputting 6102 the engaged form of thegraphical cursor that is associated with the anticipated input, the usermay receive confirmation that the input he or she entering (or isdetected as entering) is suitable (or at least is as expected).

If the determination 6100 is negative, the base form of the cursorassociated with the anticipated input is emphasized and outputted 6104,for example to a graphical display. Through emphasizing and outputting6104 the base form of the graphical cursor that is associated with theanticipated input, the user may be advised that the input he or she isentering (or is detected as entering) may be unsuitable (or at least maybe unexpected).

The emphasis applied to the base form may vary, as noted above withregard to step 694. In addition, the emphasis applied to the base formin step 6104 may be the same as or similar to the emphasis applied tothe base form in step 694, or may be different. For example, theemphasis in step 694 (based on hover mismatch) may be to turn the baseform yellow, while the emphasis in step 6104 (based on input mismatch)may be to turn the base form red. Other arrangements also may besuitable.

Also as noted with regard to step 694, although in FIG. 6C the method isshown as returning to step 698 after step 6104, this is an example andother arrangements may be suitable. For example, even if the detectedinput does not match the anticipated input, the detected input may beaccepted and executed (in the example of FIG. 6C, this may includeproceeding with step 6106 rather than returning to step 698).

Still with reference to FIG. 6C, a determination is made 6106 as towhether the detected input is complete. For example, considering handgestures the determination may be made 6106 by measuring the speed,position, orientation, etc. of a user's hand so as to see whether thehand has stopped, or has reached some state otherwise indicative that agesture has been completed. However, other arrangements may be suitable.

If the determination 6106 is negative—if the detected input isincomplete (or at least is determined to be incomplete)—the methodreturns to step 6102 and the engaged form of the cursor continues to beoutput 6102. If the determination 6106 is positive—if the detectedgesture is completed (or at least is determined to be complete)—themethod continues in FIG. 6D.

In FIG. 6D, the detected input is executed 6108. For example, if theinput associated with a two-finger swipe is to rotate a 3D object, that3D object is rotated.

It is noted that given the arrangement of FIG. 6A through FIG. 6D, thedetected input also is the anticipated input. This may not necessarilybe the case, however; as noted, in certain embodiments inputs other thananticipated inputs may be accepted, and in such case the input that isdetected and executed 6108 may be different from the input that isanticipated.

The completed form of the cursor associated with the detected input isoutput 6110. Again, it is noted that the detected input may be the sameas the anticipated input for the arrangement in FIG. 6A through FIG. 6D,but this may not necessarily be true for all embodiments. Regardless,typically (though not necessarily) if an executed form is outputted6110, the executed form will be of the cursor associated with the inputthat is in fact detected, rather than the executed form of the inputthat is anticipated. That is, a cursor form showing completion of theinput actually detected may be outputted 6110, even if different fromthe input that was expected.

Alternately, if the completed detected input does not match theanticipated input, the error form of the cursor associated with theanticipated input and/or the error form of the cursor associated withthe detected input may be outputted instead. That is, if the inputactually detected is different from what is expected, then an error formof a cursor may be outputted rather than a completed form.

Now with reference to FIG. 7A through FIG. 7C, another example method isprovided, this example referring more particularly to implementationwith a head mounted display (abbreviated “HMD” in places within FIG. 7Athrough FIG. 7C), with a processor disposed thereon.

In FIG. 7A, definitions for multiple hand gesture inputs areinstantiated 772 onto the processor of a head mounted display. Forexample, one and/or two-finger swipes, presses, etc. as applied by auser's hand may be defined, along with some action, executableinstruction, etc. that is to be carried out in response to those handgestures.

Base forms multiple graphical cursors are instantiated 774A onto thehead mounted display processor. For example, base forms for a one-fingergeneral cursor 102, a two-finger general cursor 108, a one-finger swipecursor 114, a two-finger swipe cursor 120, a one-finger press cursor126, a two-finger press cursor 132, a one-finger press-and-hold cursor138, a two-finger press-and-hold cursor 144, a pinch in cursor 150, anda pinch out cursor 156 as illustrated in FIG. 1 may be so instantiated;however this is an example only, and is not limiting.

Hover forms, engaged forms, and error forms of cursors also areinstantiated 744B, 744C, and 744D onto the processor of the head mounteddisplay. Although four cursor forms are shown to be instantiated ontothe head mounted display processor in FIG. 7A in steps 744A, 744B, 744C,and 744D, this is an example only. More or fewer cursor forms may beinstantiated (or otherwise established), and as noted previously not allcursors necessarily will have all forms.

The graphical cursors are associated 782 with one or more of the handgesture inputs in the head mounted display processor.

Now with reference to FIG. 7B, the anticipated hand gesture input isdetermined 784 in the head mounted display processor. For example, thehand gesture(s) that are acceptable and/or most likely to be entered bythe user may be identified based on recent actions (e.g. what gesturesthe user has performed immediately beforehand), based on previoussimilar situations (e.g. what gestures the user has performed when usingthe same program or in the same environment), based on what functionsthe head mounted display is carrying out (e.g. the programs being run,the information being displayed, etc.), other contextual factors, and soforth.

The base form of the cursor associated with the anticipated hand gestureinput is outputted 786 to the head mounted display. For example, thecursor may be displayed on near-eye displays, such that the user seesthe cursor overlaid onto the physical environment (e.g. if the near-eyedisplays are see-through) or onto a virtual or augmented realityenvironment, etc. In such manner, the user may be prompted regardinganticipated gesture inputs.

Still with reference to FIG. 7B, a hover corresponding with a gestureinput is detected 788 using information received from one or moresensors disposed on the head mounted display. For example, the headmounted display may include a depth imager and an RGB imager, whichtogether may provide sufficient information to detect and identify handpositions, motions, contextual factors, etc. within those sensors'fields of view as may correspond with a hover for some hand gestureinput. Based for example on those hand position, motions, contextualfactors, etc., a hover for a hand gesture input may be detected.

Detecting the hand gesture hover 788 also may include (but is notrequired to include) analysis within the processor, for example theprocessor may analyze the content of images obtained by the sensors, mayapply algorithms to such images, or otherwise may determine that a handgesture hover is taking place and/or identify which hand gesture hoveris taking place.

A determination is made 790 in the head mounted display processor as towhether the detected user hand gesture hover matches the anticipateduser hand gesture input.

If the determination 790 is positive—if the detected user hand gesturehover matches the anticipated user hand gesture input—then the hoverform of the cursor associated with the anticipated user hand gestureinput is outputted 792 to the head mounted display.

If the determination 790 is negative—if the detected user hand gesturehover does not match the anticipated user hand gesture input—then theerror form of the cursor associated with the anticipated user handgesture input is outputted 795 to the head mounted display, and themethod returns to step 788. It is noted that this arrangement differssomewhat from that in FIG. 6B as previously described; where in FIG. 6Bthe base form of the relevant cursor is emphasized, in FIG. 7B an errorform is outputted 795.

Now with reference to FIG. 7C, a user hand gesture input is detected 798using information received from one or more sensors disposed on the headmounted display. For example, the head mounted display may include adepth imager and an RGB imager, which together may provide sufficientinformation to detect and identify hand positions, motions, contextualfactors, etc. within those sensors' fields of view as may correspondwith a hand gesture input.

As with the hand gesture hover in step 788, detecting the hand gestureinput 798 also may include (but is not required to include) analysiswithin the processor.

A determination is made 7100 in the head mounted display processor as towhether the detected user hand gesture input matches the anticipateduser hand gesture input.

If the determination 7100 is positive—if the detected user hand gestureinput matches the anticipated user hand gesture input—then the engagedform of the cursor associated with the anticipated user hand gestureinput is outputted 7102 to the head mounted display.

If the determination 7100 is negative—if the detected user hand gestureinput does not match the anticipated user hand gesture input—then theerror form of the cursor associated with the anticipated user handgesture input is outputted 7105 to the head mounted display, and themethod returns to step 798. As noted with regard to step 795, it isnoted that this arrangement differs somewhat from that in FIG. 6C aspreviously described; where in FIG. 6C the base form of the relevantcursor is emphasized, in FIG. 7B an error form is outputted 7105.

Continuing in FIG. 7C, the hand gesture input is executed 7108 in thehead mounted display processor. Although not specified in FIG. 6D,execution 7108 of the detected hand gesture input may include (but isnot required to include) entities other than the processor, and/or otherthan the head mounted display. For example, if the hand gesture inputassociated with a two-finger swipe is to rotate a 3D object, that 3Dobject is rotated; rotation of the 3D object may be outputted from thedisplay(s) of the head mounted display, may be outputted from otherscreens in communication with the head mounted display, may be loggedinternally in a data store or transmitted externally to some otherdevice or system, etc.

It is emphasized that the arrangement shown in FIG. 7A through FIG. 7Cis an example only, particular to a head mounted display utilizing handgesture inputs. Embodiments are not limited only to the arrangementshown in FIG. 7A through FIG. 7C, and may vary considerably.

Now with reference to FIG. 8, therein is shown an example of a suite ofcursors and forms thereof. Such a suite may represent the entirearrangement of visible cursors/forms for a particular embodiment. Forexample, a head mounted display may use all of the cursors and formsshown, and no others. The arrangement shown in FIG. 8 thus would includecursors and/or forms for all of the functions performed in someparticular embodiment, such as an interface for a head mounted display,a mobile operating system, etc. It is noted that the FIG. 8 does notinclude all of the cursors referred to elsewhere herein, nor all of theforms, and that the distribution of cursors and forms is notcomprehensive even for those shown (for example, hover forms are shownfor some cursors but not for all, etc.). Comprehensive or uniformarrangements of cursors and forms is not required for all embodiments,as may be seen from FIG. 8. In addition, it is emphasized that thearrangement shown in FIG. 8 is an example only, and is not limiting.

In addition, where certain previous examples have shown a simpleone-to-one arrangement of forms for a cursor—that is, one base form, onehold form, one engaged form, etc.—as shown in FIG. 8 cursor/formarrangements are not required to be one-to-one. A single cursor may havemore than one of a given type of form (e.g. two engaged forms).

In FIG. 8, a base form of a one-finger cursor 802 is shown. A base formone-finger cursor 802 as shown may serve as a default, wherein specificinputs or types of inputs may not be called for, or wherein severaldifferent inputs may be suitable. Alternately, the base form one-fingercursor 802 may serve to represent one-finger inputs only, for example ifone-finger gestures are used for certain inputs (e.g. press inputs,press-and-hold inputs, etc.) while two-finger gestures are used forother inputs (e.g. swipes, pinches, etc.). Given the distinctiveappearance shown for the base form one-finger cursor 802, displaying thebase form one-finger cursor 802 may prompt a user to enter a one-fingerinput.

A hover form of the one-finger cursor 806 also is shown in FIG. 8. Asmay be seen, the hover form of the one-finger cursor 806 is graphicallysimilar to but distinct from the base form one-finger cursor 802. Indisplaying the hover form of the one-finger cursor 806 in response to auser hover, the user may be given graphical confirmation that the userhover has been detected (and thus for example that the system“recognizes” the user's action in hovering over the cursor).

No engaged form for a general one-finger cursor is shown in FIG. 8.However, an engaged form one-finger press cursor 828 also is shown,along with an engaged form one-finger press-and-hold cursor 840. Incertain embodiments, it may be suitable for engaged forms to be specificto particular inputs and/or actions, even if the corresponding base formis general. Thus, the engaged form one-finger press cursor 828 andengaged form one-finger press-and-hold cursor 840 may serve as engagedforms of the base form one-finger press cursor 828 for the particularexample arrangement shown in FIG. 8.

Given such an arrangement, a base form one-finger cursor 802 may bedisplayed when that cursor is neither engaged nor hovered and the hoverform one-finger cursor 806 displayed when the cursor is hovered. Then,either the engaged form one-finger press cursor 828 or the engaged formone-finger press-and-hold cursor 840 may be displayed when the cursor isengaged, depending on whether the user inputs a press or apress-and-hold. (At least potentially, the engaged form one-finger presscursor 828 may be shown first in response to a press, and the engagedform one-finger press-and-hold cursor 840 shown after the press has beenheld for some period.)

In some sense then, the four elements 802, 806, 828, and 840 all may beconsidered forms of a single cursor, with a base form 802, a hover form806, and two different engaged forms 828 and 840. Although forsimplicity certain cursors are shown and described herein with a simple,linear relationship of forms—e.g. one base form, one hover form, oneengaged form—as may be seen from FIG. 8 embodiments are not limited onlythereto. A single cursor may include multiple forms for each of severalstates, as elements 828 and 840 in FIG. 8 both may be considered to beengaged forms for a one-finger cursor.

Considering elements 802, 806, 828, and 840 collectively, the base formone-finger cursor 802 may be displayed to prompt a user for a one-fingergesture input, the hold form one-finger cursor 806 may be displayed toconfirm to the user that a one-finger gesture hover has been detected,and the engaged form one-finger press cursor 828 or the engaged formone-finger press-and-hold cursor 840 displayed to confirm to the userthat a one-finger press gesture or one-finger press-and-hold gesturerespectively has been detected.

FIG. 8 also shows a base form two-finger cursor 820.

A base form two-finger cursor 820 may serve as a default if specificinputs or types of inputs may be called for, or several different inputsmay be suitable. Alternately, the base form two-finger cursor 820 mayrepresent two-finger inputs only (e.g. as distinct from one-fingerinputs). Given the distinctive appearance shown for the base formtwo-finger cursor 820, displaying the base form two-finger cursor 820may prompt a user to enter a two-finger input.

No hover form of a two-finger cursor is shown in FIG. 8. Given such anarrangement, it may be that the base form two-finger cursor 820 isdisplayed even if a hover is detected, or that no hover is detected orconsidered, etc. Thus to a viewer the base form two-finger cursor 820may not visibly change in response to a hover (though in otherembodiments a hover form may be included and displayed).

As with the on-finger cursors, two different engaged form two-fingercursors are shown: an engaged form two-finger press cursor 834 and anengaged form two-finger swipe cursor 822. The engaged form two-fingerpress cursor 834 may be displayed to the user in response to the userentering (or at least beginning to enter) a two-finger press input,while the engaged form two-finger swipe cursor 822 may be displayed tothe user in response to the user entering (or at least beginning toenter) a two-finger swipe input. Thus, display of element 834 or 822 mayserve to graphically confirm to the user that a two-finger press inputor two-finger swipe input has been detected.

Still with reference to FIG. 8, a base form pinch out cursor 856 isshown along with an engaged form pinch out cursor 858. No hover form isshown. The base form pinch out cursor 856 may be displayed to prompt auser to enter a pinch out input, while the engaged form pinch out cursor858 may be displayed to confirm to a user that a pinch out input hasbeen detected.

A base form pinch in cursor 850 also is shown along with an engaged formpinch in cursor 852, again with no hover form shown. The base form pinchin cursor 850 may be displayed to prompt a user to enter a pinch ininput, while the engaged form pinch in cursor 852 may be displayed toconfirm to a user that a pinch in input has been detected.

Thus the arrangement shown in FIG. 8 may be considered as four cursors:a one-finger cursor 802, 806, 828, and 840, a two-finger cursor 820,834, and 822, a pinch in cursor 856 and 858, and a pinch out cursor 850and 852. Where the one-finger cursor includes one base form 802, onehover form 806, and two engaged forms 828 and 840, the two-finger cursorincludes a base form 820 and two engaged forms 834 and 822 but no holdform, and the pinch in cursor includes only a base form 856 and anengaged form 858, with the pinch out cursor likewise including only abase form 850 and an engaged form 852. Such arrangements, or otherarrangements without one-to-one correspondence between forms for variouscursors, may be suitable for certain embodiments (though one-to-onecorrespondence also is not prohibited).

As noted, certain cursors may have more than one form of a given type,for example having two engaged forms, while certain cursors also maylack any forms of a given type, for example having no hover form.Conversely, certain cursor forms may be common to more than one cursor.For example, several cursors may share a common error form, or a singlecommon completed form (although no error forms or completed forms areshown in the example of FIG. 8); in such instance some or all errorforms output may look similar or identical, regardless of what cursor isdisplayed. Such an arrangement may serve to communicate to a user thatthe input is incorrect (or at least unexpected), without necessarilyspecifying a particular error.

Now with reference to FIG. 9, for at least certain embodiments it may beuseful if cursors and/or forms thereof are graphically indicative of theuser input(s) that are associated with those cursors and/or forms. Suchgraphic indications also may serve to distinguish different cursorsand/or forms from one another, for example a one-finger cursor from atwo-finger cursor. However, the manner in which cursors may be soindicative and/or so distinctive may vary considerably, and theparticular graphical details of examples shown and described herein arenot limiting.

For example, FIG. 9 shows a one-finger general cursor 902 and aone-finger swipe cursor 914. The one-finger general cursor 902 andone-finger swipe cursor 914 may be considered to be base forms, althoughfor purposes of illustration regarding the example of FIG. 9 the preciseform(s) may not be of consequence.

In addition, FIG. 9 also shows several two-finger general cursors 908Athrough 908E and several two-finger swipe cursors 920A through 920E.

As may be seen, each of the two-finger general cursors 908A through 908Ebear some graphical resemblance to the one-finger general cursor 902,and each of the two-finger swipe cursors 920A through 920E bear somegraphical resemblance to the one-finger swipe cursor 914 (though eachsuch two-finger cursor 908A through 908E and 920A through 920E stillremains graphically distinct from the one-finger cursors 902 and 914,respectively). However, each two-finger cursor 908A through 908E and920A through 920E bears graphical indication that, as compared with theone finger cursors 902 and 914, two fingers may be called for.

For example, as may be seen the one-finger general cursor 902 includesdashed crosshairs distributed at cardinal points around a circle, andthe one-finger swipe cursor 914 includes arrows distributed at cardinalpoints around a circle. By contrast, the two-finger general cursor 908Aincludes pairs of dashed crosshairs, and two-finger swipe cursor 920Aincludes pairs of arrows. Such pairing may serve as a graphicalindication of two-finger input.

Similarly, the one-finger general cursor 902 and the one-finger swipecursor 914 each include a circle; by contrast the two-finger generalcursor 902B and the two-finger swipe cursor 914B include lozenge shapesin place of circles, broader across than circles. This may serve asgraphical indication of two-finger input (e.g. two fingertips side byside as opposed to a single fingertip).

Likewise, the two-finger general cursor 902C and the two-finger swipecursor 914C include two partial circles in contact with one another; thetwo-finger general cursor 902D and the two-finger swipe cursor 914Dinclude two circles in proximity to one another; and the two-fingergeneral cursor 902E and the two-finger swipe cursor 914E include largercircles than the one-finger general cursor 902 and the one-finger swipecursor 914. Each such may serve as graphical indication of two-fingerinput.

Although FIG. 9 shows only one-finger general cursors, two-fingergeneral cursors, one-finger swipe cursors, and two-finger swipe cursors,it should be understood that other cursors and/or forms thereof also mayvary considerably while remaining graphically indicative of anassociated input, and/or graphically distinct from other cursors and/orforms.

Similarly, with reference to FIG. 10, therein are shown three examples1020A, 1020B, and 1020C of swipe cursors (which depending on theembodiment may be one-finger, two-finger, or non-specific as tofingers). As may be seen, swipe cursor 1020A includes a single arrowpointing to the right; swipe cursor 1020B shows a single arrow in threecardinal directions but three arrows to the right; and swipe cursor1020C shows three arrows to the right. Each of the swipe cursors 1020A,1020B, and 1020C may be graphically indicative of a swipe, and or of aswipe in a particular direction (e.g. to the right). However, eventhough all of the swipe cursors 1020A, 1020B, and 1020C in FIG. 10include circles and arrows (which is not limiting), arrangements of theswipe cursors 1020A, 1020B, and 1020C may be seen to vary considerably.

It is noted that depending on embodiment the swipe cursors 1020A, 1020B,and 1020C in FIG. 10 may represent different forms. For example, theswipe cursors 1020A, 1020B, and 1020C may represent base forms promptinga user to swipe in a particular direction (e.g. to the right). However,the swipe cursors 1020A, 1020B, and 1020C also may represent engagedforms confirming to a user that a swipe in a particular direction (e.g.to the right) has been detected. Other arrangements also may be equallysuitable.

Now with reference to FIG. 11 and FIG. 12, although line artillustrations herein of certain cursors and/or forms arrangements areinherently static and black-and-white (due to limitations of line art),cursors and/or forms are not necessarily so limited. It should beunderstood that cursors, forms, portions thereof, etc. may vary incolor, shade, transparency, etc., and/or may be solid, hollow,patterned, etc. In addition, as shown in FIG. 11 and FIG. 12 cursorsand/or forms may be animated.

For example, FIG. 11 shows a one-finger general cursor 1102A, includinga circle with dashed crosshairs arranged in cardinal directions aroundthe circle. Elements 1102B, 1102C, and 1102D show similar arrangementsto one-finger general cursor 1102A, however in each of elements 1102B,1102C, and 1102D one dash in each crosshair is widened. If elements1102B, 1102C, and 1102D are taken as frames in an animation, theappearance may be that wide dashes are moving outward from the circle.Although increased width is shown for elements 1102B, 1102C, and 1102D,changes in brightness, color, or transparency, actual motion of dashes,etc. also may be suitable.

FIG. 11 also shows a one-finger general cursor 1102E, along withelements 1102F, 1102G, and 1102H. In each of elements 1102F, 1102G, and1102H two of the dashes in each crosshair present in 1102E are absent.If elements 1102F, 1102G, and 1102H are taken as frames in an animation,the appearance may be that individual dashes are moving outward from thecircle.

FIG. 11 shows a one-finger press-and-hold cursor 1126A, including acircle with three concentric rings. Elements 1126B, 1126C, and 1126Dshow similar arrangements to one-finger general cursor 1126A, however ineach of elements 1126B, 1126C, and 1126D one of the concentric rings iswidened. If elements 1126B, 1126C, and 1126D are taken as frames in ananimation, the appearance may be that wide rings are moving outward fromthe circle.

FIG. 11 also shows also shows a one-finger press-and-hold cursor 1126E,along with elements 1126F, 1126G, and 1126H. In each of elements 1126F,1102G, and 1126H two of the concentric rings present in 1126E areabsent. If elements 1126F, 1126G, and 1126H are taken as frames in ananimation, the appearance may be that individual dashes are movingoutward from the circle.

Similarly, FIG. 12 shows a two-finger swipe cursor 1220A, including acircle with single arrows arranged in three cardinal directions aroundthe circle and a group of three arrows extending to the right. Elements1220B, 1220C, and 1220D show similar arrangements to 1220A, however ineach of elements 1220B, 1220C, and 1220D one arrow in the group of threeis enlarged. If elements 1220B, 1220C, and 1220D are taken as frames inan animation, the appearance may be that enlarged arrows are movingrightward from the circle.

FIG. 12 also shows a two-finger swipe cursor 1220E. Elements 1220F,1220G, and 1220H show similar arrangements to 1220E, however in each ofelements 1220F, 1220G, and 1220H two of the arrows present in the groupof three in 1220E are missing. If elements 1220F, 1220G, and 1220H aretaken as frames in an animation, the appearance may be that arrows aremoving rightward from the circle.

FIG. 12 shows a pinch in cursor 1250A, including a dashed circleenclosing two sets of three arrows pointing inward. Elements 1250B,1250C, and 1250D show similar arrangements to 1250A, however in each ofelements 1250B, 1250C, and 1250D one arrow in each group of three isenlarged. If elements 1250B, 1250C, and 1250D are taken as frames in ananimation, the appearance may be that enlarged arrows are moving inwardtoward the middle of the dashed circle.

FIG. 12 also shows a pinch in cursor 1250E. Elements 1250F, 1250G, and1250H show similar arrangements to 1250E, however in each of elements1250F, 1250G, and 1250H two of the arrows present in each group of threein 1250E are missing. If elements 1250F, 1250G, and 1250H are taken asframes in an animation, the appearance may be that arrows are movinginward toward the middle of the dashed circle.

FIG. 12 shows a pinch out cursor 1256A, including a dashed circle withintwo sets of three arrows pointing outward. Elements 1256B, 1256C, and1256D show similar arrangements to 1256A, however in each of elements1256B, 1256C, and 1256D one arrow in each group of three is enlarged. Ifelements 1256B, 1256C, and 1256D are taken as frames in an animation,the appearance may be that enlarged arrows are moving outward from thedashed circle.

FIG. 12 also shows a pinch out cursor 1256E. Elements 1256F, 1256G, and1256H show similar arrangements to 1256E, however in each of elements1256F, 1256G, and 1256H two of the arrows present in each group of threein 1256E are missing. If elements 1256F, 1256G, and 1256H are taken asframes in an animation, the appearance may be that arrows are movingoutward from the dashed circle.

FIG. 11 and FIG. 12 are examples only. Animations other than what isshown in FIG. 11 and FIG. 12 may be equally suitable. For example,although the dashed circles in cursors 1250A through 1250H and 1256Athrough 1256H are shown with constant size, in certain embodiments thedashed circles may change responsive to user input, for exampleincreasing in size if the user moves his or her fingers apart (i.e.pinching in) or decreasing in size if the user moves his or her fingerstogether (i.e. pinching in).

In addition, animation is not required to be present. Where animation ispresent, animation is not required to be uniform or universal (nor areother features or changing features such as color, transparency, etc.).Certain cursors and/or forms of cursors may be animated while others arenot. For example, a hover form and/or an engaged form of a cursor may beanimated, while the base form of the same cursor is static, for example.Such variation may serve as a graphical distinction between differentcursors and/or forms, may provide emphasis, may draw attention tocertain cursors or forms over others, may serve as confirmation to auser that a hover or an input is detected, etc.

Now with reference to FIG. 13, therein is shown an example embodiment ofan apparatus 13120 for interface control with prompt and feedback. Asshown, the apparatus 13120 includes a processor 13122, adapted toexecute executable instructions instantiated thereon. The processor13122 is not limited with regard to form, structure, etc. The processor13122 may for example be a digital electronic processor, such as may bepresent in a head mounted display, smart phone, tablet, laptop computer,desktop computer, etc., but other arrangements also may be suitable.

The apparatus 13120 also includes a graphical display 13124. As shownthe graphical display 13124 is a stereo display, but this is notlimiting and other arrangements may be suitable. Embodiments are notlimited with regard to the form, structure, etc. of the graphicaldisplay 13124. For example, the graphical display 13124 may include LEDor OLED displays, CRT displays, plasma displays, laser displays, etc.,though other arrangements may be equally suitable.

In addition, the example apparatus 13120 as-illustrated also includessensors 13126A and 13126B. In FIG. 13 the sensors 13126A and 13126B areillustrated as an RGB imager and a depth imager respectively, but thisis an example only. The sensors 13126A and 13126B may serve for exampleto detect and/or assist in detecting inputs, hovers, etc., for exampleby acquiring data and providing that data to the processor 13122 and/orto executable instructions instantiated thereon.

Still with reference to FIG. 13, as may be seen a number of entities13130 through 13152 are shown disposed on the processor 13122. Theentities 13130 through 13152 may include executable instructionsinstantiated on the processor, non-executable data, some combinationthereof, etc. With regard to the example shown in FIG. 13 the entities13130 through 13152 are described as including data and/or executableinstructions, and may be considered as being data entities, but otherarrangements may be equally suitable.

Although data entities 13130 through 13152 are shown as being distinctfor clarity (e.g. so as to indicate certain functions), this is anexample only. Data entities may be combined, subdivided, disposed onmultiple processors and/or clouds, otherwise reorganized, etc.Furthermore, where functions are not required certain of the dataentities 13130 through 13152 may be eliminated, or additional dataentities added, in various embodiments.

With regard individually to the data entities 13130 through 13152, aninput establisher 13130 is disposed on the processor 13122, and isadapted to establish inputs, for example defining hand gestures thatwhen received will serve as or invoke processor commands, executableinstructions, etc.

A cursor establisher 13134 is disposed on the processor 13122, and isadapted to establish graphical cursors and/or forms thereof. Aninput-cursor associator 13138 is disposed on the processor 13122, and isadapted to associate inputs with cursors, such that an input or group ofinputs is associated with some cursor. For example, one-finger handgesture inputs may be associated with a graphically distinctiveone-finger cursor, while two-finger hand gesture inputs may beassociated with a graphically distinctive two-finger cursor.

An input anticipator 13140 is disposed on the processor 13122, and isadapted to establish one or more anticipated inputs, anticipated inputsfor example being suited for current conditions (e.g. inputs formanipulating a 3D model when a 3D model is being displayed), orotherwise considered likely to be entered and/or required, etc.

An input detector 13142 is disposed on the processor 13122, and isadapted to detect inputs. For example, for inputs in the form of userhand gestures, the input detector may be adapted to identify handpositions, hand motions, hand configurations, etc. in RGB images anddepth images as received from the sensors 13126A and 13126B, though thisis an example only and is not limiting.

A correspondence determiner 13148 is disposed on the processor 13122,and is adapted to determine whether detected inputs correspond withanticipated inputs.

A cursor form selector 13150 is disposed on the processor 13122, and isadapted to select a cursor and/or a form thereof, for example based onthe status of and/or communications from others of the entities 13130through 13152. As a more concrete example, based on anticipated inputsdetermined by the input anticipator 13140, the cursor form selector13150 may select a base form of a one-finger general cursor if the inputanticipator 13140 determines that the one-finger general cursor is the(or an) anticipated input. Similarly, the cursor form selector 13150 mayselect an engaged form of the one-finger general cursor if thecorrespondence determiner 13148 determines that detected input matchesthe anticipated input (in this example, that a one-finger input wasdetected when the one-finger input was anticipated).

An outputter 13152 is disposed on the processor 13122, and is adapted tooutput cursors and/or forms thereof to the graphical display 13124. Forexample, cursors and/or forms as selected by the cursor form selector13150 may be communicated to the outputter 13152, which then sends theselected cursors and/or forms to the graphical display 13124.

As may be seen, the arrangement in FIG. 13 does not refer specificallyto any particular cursors and/or forms. Unless otherwise specified,individual embodiments are not necessarily limited to any particularcursors or forms, or to any particular prompts, feedback, or variationsthereof.

Although not shown in the example apparatus 13120 shown in FIG. 13,embodiments may include additional elements, such as a data store, acommunicator, etc. Such elements may serve to support certain functionsdescribed herein, for example cursors may be established by being readfrom a data store, received from some external source via acommunicator, etc.

In addition, with reference now to FIG. 14 embodiments may varyconsiderably in terms of elements and functions. In the examplearrangement of FIG. 14, an apparatus 14120 again is shown, again with aprocessor 14120, graphical display 14124, and sensors 14126A and 14126B.A number of data entities 14128 through 14156 again are shown disposedon the processor 14122, however, the particular entities 14128 through14156 and functions performed thereby differ from the arrangement inFIG. 13.

In FIG. 14, input definitions 14128 are disposed on the processor 14122.Where in FIG. 13 an input establisher 13130 was instantiated onto theprocessor 13122 so as to establish inputs, in FIG. 14 input definitions14128 are themselves instantiated on the processor 14122. Thedistinction may be considered one of providing a tool for producing aproduct in FIG. 13, and providing the product itself in FIG. 14. Yetother arrangements also may be equally suitable.

Likewise, cursor definitions 14128 are disposed on the processor 14122,and input-cursor associations 14128 are disposed on the processor 14122.

An input anticipator 14128 is disposed on the processor 14122, and isadapted to establish one or more inputs. An input detector 14128 isdisposed on the processor 14122, and is adapted to detect inputs.

A hover detector is disposed on the processor 14122, and is adapted todetect hovers associated with (e.g. preliminary to) inputs. For example,for inputs in the form of user hand gestures, the input detector may beadapted to identify hand positions, hand motions, hand configurations,etc. in RGB images and depth images as received from the sensors 13126Aand 13126B so as to determine whether a hover is taking place, e.g.whether the user's hand is “hovering” over a cursor, whether the user'shand is about to enter an input to the cursor, etc., though this is anexample only and is not limiting.

A correspondence determiner 14128 is disposed on the processor 14122,and is adapted to determine correspondence among anticipated inputs,detected inputs, detected hovers, etc.

A cursor form selector 14128 is disposed on the processor 14122, and isadapted to select a cursor and/or a form thereof, for example based onthe status of and/or communications from others of the entities 14128through 14156. An outputter 14128 is disposed on the processor 14122,and is adapted to output cursors and/or forms thereof to the graphicaldisplay 14124.

An output emphasizer 14128 is disposed on the processor 14122, and isadapted to emphasize cursors and/or forms thereof output to thegraphical display (whether by communicating with the outputter 14152 toaddress forms/cursors before output, communicating with the graphicaldisplay 14124 directly, or otherwise). For example, the outputemphasizer may alter the color, size, brightness, transparency,animation, etc. of a cursor or form thereof, for example in response tomismatch between what inputs are anticipated and what inputs aredetected.

An error outputter 14128 is disposed on the processor 14122, and isadapted to output error indications to the graphical display (againwhether by communicating with the outputter 14152 to add errorindications to forms/cursors before output, communicating with thegraphical display 14124 directly, or otherwise). As noted, errorindications, output emphasis, and error forms of cursors may to somedegree overlap, thus even when error outputs exist the error outputs maybe handled by an output emphasizer 14154 or a cursor form selector 14150rather than necessarily by a distinct error outputter 14156.

Turning now to FIG. 15, therein an example apparatus 15120 is shown inperspective view. In the example arrangement shown in FIG. 15 theapparatus 15120 includes a frame 15158, the frame 15158 being in theform of a head mounted display resembling a pair of glasses. However,this arrangement is not limiting, and other arrangements may be equallysuitable.

The apparatus includes a processor 15122, sensors 15126A and 15126B, anddisplays 15124A and 15124B in stereo configuration (which alternatelymay be considered as a single display), disposed on the frame 15158. Asmay be seen, the displays 15124A and 15124B are configured on the frame15158 such that when the apparatus 15120 is worn by a user, the displays15124A and 15124B may be disposed facing and proximate the user's eyes.Also, when the apparatus 15120 is worn the sensors 15126A and 15126B areforward facing relative to the user (and/or the user's head/face), anddepending upon the particulars of the sensors 15126A and 15126B mayexhibit fields of view directed forward and potentially similar to thefields of view of the user's eyes.

FIG. 16 is a block diagram of an apparatus that may perform variousoperations, and store various information generated and/or used by suchoperations, according to an embodiment of the disclosed technique. Theapparatus may represent any computer or processing system describedherein. The processing system 16190 is a hardware device on which any ofthe other entities, components, or services depicted in the examples ofFIG. 1 through FIG. 15 (and any other components described in thisspecification) may be implemented. The processing system 16190 includesone or more processors 16191 and memory 16192 coupled to an interconnect16193. The interconnect 16193 is shown in FIG. 16 as an abstraction thatrepresents any one or more separate physical buses, point to pointconnections, or both connected by appropriate bridges, adapters, orcontrollers. The interconnect 16193, therefore, may include, forexample, a system bus, a Peripheral Component Interconnect (PCI) bus orPCI-Express bus, a HyperTransport or industry standard architecture(ISA) bus, a small computer system interface (SCSI) bus, a universalserial bus (USB), IIC (I2C) bus, or an Institute of Electrical andElectronics Engineers (IEEE) standard 1394 bus, also called “Firewire”.

The processor(s) 16191 is/are the central processing unit of theprocessing system 16190 and, thus, control the overall operation of theprocessing system 16190. In certain embodiments, the processor(s) 16191accomplish this by executing software or firmware stored in memory16192. The processor(s) 16191 may be, or may include, one or moreprogrammable general-purpose or special-purpose microprocessors, digitalsignal processors (DSPs), programmable controllers, application specificintegrated circuits (ASICs), programmable logic devices (PLDs), trustedplatform modules (TPMs), or the like, or a combination of such devices.

The memory 16192 is or includes the main memory of the processing system16190. The memory 16192 represents any form of random access memory(RAM), read-only memory (ROM), flash memory, or the like, or acombination of such devices. In use, the memory 16192 may contain acode. In one embodiment, the code includes a general programming moduleconfigured to recognize the general-purpose program received via thecomputer bus interface, and prepare the general-purpose program forexecution at the processor. In another embodiment, the generalprogramming module may be implemented using hardware circuitry such asASICs, PLDs, or field-programmable gate arrays (FPGAs).

The network adapter 16194, a storage device(s) 16195, and I/O device(s)16196, are also connected to the processor(s) 16191 through theinterconnect 16193. The network adapter 16194 provides the processingsystem 16190 with the ability to communicate with remote devices over anetwork and may be, for example, an Ethernet adapter or Fibre Channeladapter. The network adapter 16194 may also provide the processingsystem 16190 with the ability to communicate with other computers withinthe cluster. In some embodiments, the processing system 16190 may usemore than one network adapter to deal with the communications within andoutside of the cluster separately.

The I/O device(s) 16196 can include, for example, a keyboard, a mouse orother pointing device, disk drives, printers, a scanner, and other inputand/or output devices, including a display device. The I/O device(s)16196 also may include, for example, cameras and/or other imagersadapted to accept visual input including but not limited to posturesand/or gestures. The display device may include, for example, a cathoderay tube (CRT), liquid crystal display (LCD), or some other applicableknown or convenient display device. The display device may take variousforms, including but not limited to stereo displays suited for use innear-eye applications such as head mounted displays or other wearabledevices.

The code stored in memory 16192 may be implemented as software and/orfirmware to program the processor(s) 16191 to carry out actionsdescribed herein. In certain embodiments, such software or firmware maybe initially provided to the processing system 16190 by downloading froma remote system through the processing system 16190 (e.g., via networkadapter 16194).

The techniques herein may be implemented by, for example, programmablecircuitry (e.g. one or more microprocessors) programmed with softwareand/or firmware, or entirely in special-purpose hardwired(non-programmable) circuitry, or in a combination of such forms.Special-purpose hardwired circuitry may be in the form of, for example,one or more AISCs, PLDs, FPGAs, etc.

Software or firmware for use in implementing the techniques introducedhere may be stored on a machine-readable storage medium and may beexecuted by one or more general-purpose or special-purpose programmablemicroprocessors. A “machine-readable storage medium”, as the term isused herein, includes any mechanism that can store information in a formaccessible by a machine.

A machine can also be a server computer, a client computer, a personalcomputer (PC), a tablet PC, a laptop computer, a set-top box (STB), apersonal digital assistant (PDA), a cellular telephone, an iPhone, aBlackberry, a processor, a telephone, a web appliance, a network router,switch, or bridge, or any machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine.

A machine-accessible storage medium or a storage device(s) 16195includes, for example, recordable/non-recordable media (e.g., ROM; RAM;magnetic disk storage media; optical storage media; flash memorydevices; etc.), etc., or any combination thereof. The storage mediumtypically may be non-transitory or include a non-transitory device. Inthis context, a non-transitory storage medium may include a device thatis tangible, meaning that the device has a concrete physical form,although the device may change its physical state. Thus, for example,non-transitory refers to a device remaining tangible despite this changein state.

The term “logic”, as used herein, may include, for example, programmablecircuitry programmed with specific software and/or firmware,special-purpose hardwired circuitry, or a combination thereof.

The above specification, examples, and data provide a completedescription of the manufacture and use of the composition of theinvention. Since many embodiments of the invention can be made withoutdeparting from the spirit and scope of the invention, the inventionresides in the claims hereinafter appended.

We claim:
 1. A method, comprising: establishing, by a processor, userinputs that include a one-finger input, a two-finger input, a pinch-ininput, and a pinch-out input, said user inputs comprising free spacehand gesture inputs; establishing, by the processor, a base form, ahover form, an engaged press form, and an engaged press-and-hold formfor said one-finger input; establishing, by the processor, a base form,an engaged press form, and an engaged swipe form for said two-fingerinput; establishing, by the processor, a base form and an engaged formfor said pinch-out input; establishing, by the processor, a base formand an engaged form for said pinch-in input; establishing, by theprocessor, a plurality of graphical cursors and associating each of saidplurality of graphical cursors with at least one of said user inputs,comprising: a base form one-finger input graphical cursor comprising ahollow circle with dashed crosshair marks disposed around a peripherythereof, associated with said base form of said one-finger input; ahover form one-finger input graphical cursor comprising a hollow circlewith contracted dashed crosshair marks disposed around a peripherythereof, associated with said hover form of said one-finger input; anengaged form one-finger press input graphical cursor comprising a filledcircle, associated with said engaged press form of said one-fingerinput; an engaged form one-finger press-and-hold input graphical cursorcomprising a filled circle with at least one concentric circlethereabout, associated with said engaged press-and-hold form of saidone-finger input; a base form two-finger input graphical cursorcomprising a hollow circle with arrow marks disposed around a peripherythereof, associated with said base form of said two-finger input; anengaged form two-finger press input graphical cursor comprising a filledcircle with arrow marks disposed around a periphery thereof, associatedwith said engaged press form of said two-finger input; an engaged formtwo-finger swipe input graphical cursor comprising a filled circle witharrow marks disposed around a periphery thereof with at least one ofsaid arrow marks comprising at least two arrows, associated with saidengaged press-and-hold form of said two-finger input; a base formpinch-out input graphical cursor comprising a hollow dashed circle witharrow marks disposed around a periphery thereof and pointing outwardtherefrom, associated with said base of said pinch-out input; an engagedform pinch-out input graphical cursor comprising a filled dashed circlewith arrow marks disposed around a periphery thereof and pointingoutward therefrom with each of said arrow marks comprising at least twoarrows, associated with said engaged form of said pinch-out input; abase form pinch-in input graphical cursor comprising a hollow dashedcircle with arrow marks disposed within a periphery thereof and pointinginward therefrom, associated with said base of said pinch-in input; abase form pinch-in input graphical cursor comprising a filled dashedcircle with arrow marks disposed within a periphery thereof and pointinginward therefrom with each of said arrow marks comprising at least twoarrows, associated with said engaged form of said pinch-in input; andwherein each of said plurality of graphical cursors is graphicallydistinctive from other cursors and is graphically indicative of saiduser inputs associated therewith, so as to identify to a viewer of adisplay; in said processor, anticipating a user input; outputting tosaid display said base form of said cursor associated with saidanticipated user input; detecting, by a sensor, a user hover; if saiddetected user hover corresponds with said anticipated user inputassociated with an outputted cursor and said outputted cursor comprisessaid hover form, outputting to said display said hover form of saidcursor associated with said anticipated user input, so as to confirm tosaid viewer a match between said anticipated user input and saiddetected user hover; detecting, by the sensor, the user input; and ifsaid detected user input corresponds with said anticipated user inputassociated with said outputted cursor and said outputted cursorcomprises said engaged form, outputting to said display said engagedform of said cursor associated with said anticipated user input, so asto confirm to said viewer a match between said anticipated user inputand said detected user input.
 2. The method of claim 1, wherein: theuser inputs comprise a first type of hands-free user input and a secondtype of hands-free user input; and the plurality of graphical cursorscomprises a first cursor and a second cursor.
 3. The method of claim 2,comprising: receiving, from an input device, the second type ofhands-free user input for the user interface being associated with thefirst type of hands-free user input; and in response to the second typeof hands-free user input not corresponding with the first type ofhands-free user input for the user interface, outputting to the displaya graphical emphasis of the base form of the first cursor associatedwith the first type of hands-free user input so as to indicate to theviewer a non-correspondence between the second type of hands-free userinput and the first type of hands-free user input for the userinterface.
 4. The method of claim 2, comprising: receiving, from aninput device, the second type of hands-free user input for the userinterface being associated with the first type of hands-free user input;and in response to the second type of user input not corresponding withthe first type of hands-free user input for the user interface,outputting to the display an error indication so as to indicate to theviewer a non-correspondence between the second type of hands-free userinput and the first type of hands-free user input for the userinterface.
 5. The method of claim 2, further comprising: detecting asecond user hover that does not correspond with the first cursor; anddisplaying, by the display, a graphical emphasis of the base form of thefirst cursor to indicate to the viewer a non-correspondence between thefirst cursor and the detected second user hover.
 6. The method of claim2, further comprising: detecting a second user hover that does notcorrespond with the first cursor; and displaying, by the display, anerror indication to indicate to the viewer a non-correspondence betweenthe first cursor and the detected second user hover.
 7. The method ofclaim 2, wherein the first type of hands-free user input or the secondtype of hands-free user input comprises hand gesture inputs.
 8. Themethod of claim 7, wherein the first type of hands-free user input orthe second type of hands-free user input comprises free space handgesture inputs.
 9. The method of claim 2, wherein the first cursorcomprises a graphically hollow cursor and the second cursor comprises agraphically filled cursor.
 10. The method of claim 2, wherein the hoverform of the first cursor is graphically compacted compared to the baseform of the first cursor.
 11. The method of claim 2, wherein: the firsttype of hands-free user input or the second type of hands-free userinput comprises a single touch input; the first cursor or the secondcursor comprise a single touch cursor associated with the single touchinput of the first type of hands-free user input or the second type ofhands-free user input, respectively; and the single touch cursor of thefirst type of hands-free user input or the second type of hands-freeuser input is graphically indicative of a one-point touch to adesignated position in space.
 12. The method of claim 11, wherein: thesingle touch cursor of the first hands-free user input or the secondhands-free user input comprises a circle with crosshair marks disposedaround a periphery thereof; and the circle is graphically indicative ofthe designated position and the one-point touch thereto.
 13. The methodof claim 2, wherein: the first type of hands-free user input or thesecond type of hands-free user input comprises a double touch input; thefirst cursor or the second cursor comprise a double touch cursorassociated with the double touch input of the first type of hands-freeuser input or the second type of hands-free user input, respectively;and the double touch cursor of the first type of hands-free user inputor the second type of hands-free user input is graphically indicative ofa two-point touch to a designated position in space.
 14. The method ofclaim 13, wherein: the first type of hands-free user input or the secondtype of hands-free user input comprises a single touch input; the firstcursor or the second cursor comprise a single touch cursor associatedwith the single touch input of the first type of hands-free user inputor the second type of hands-free user input, respectively; the singletouch cursor of the first type of hands-free user input or the secondtype of hands-free user input comprises a circle with crosshair marksdisposed around a periphery thereof, and the double touch cursorcomprises a circle larger than a circle of the single touch cursor withcrosshair marks disposed around a periphery thereof; and the circle ofthe double touch cursor of the first type of hands-free user input orthe second type of hands-free user input is graphically indicative ofthe designated position and the circle of the double touch cursor beinglarger is graphically indicative of the two-point touch thereto.
 15. Themethod of claim 13, wherein: the double touch cursor comprises two atleast partial circles mutually connected with crosshair marks disposedaround a periphery thereof; and the at least partial circles aregraphically indicative of the designated position, and the two at leastpartial circles are graphically indicative of the two-point touchthereto.
 16. The method of claim 13, wherein: the double touch cursorcomprises two circles mutually proximate with crosshair marks disposedaround a perimeter thereof; and the circles are graphically indicativeof the designated position, and the two circles are graphicallyindicative of the two-point touch thereto.
 17. The method of claim 13,wherein: the double touch cursor comprises a circle with pairedcrosshair marks disposed around a periphery thereof; and the circle isgraphically indicative of the designated position, and the pairedcrosshair marks are graphically indicative of the two-point touchthereto.
 18. The method of claim 2, wherein: the first type ofhands-free user input or the second type of hands-free user inputcomprises a single point directional swipe input; the first cursor orthe second cursor comprise a single point directional swipe cursorassociated with the single point directional swipe input; and the singlepoint directional swipe cursor is graphically indicative of a one-pointswipe in a designated direction.
 19. The method of claim 18, wherein:the single point directional swipe cursor comprises a circle with atleast one arrow disposed around a periphery thereof; and the at leastone arrow is graphically indicative of the designated direction and thecircle is graphically indicative of the one-point swipe in thedesignated direction.
 20. The method of claim 2, wherein: the first typeof hands-free user input or the second type of hands-free user inputcomprises a double point directional swipe input; the first cursor orthe second cursor comprise a double point directional swipe cursorassociated with the double point directional swipe input; and the doublepoint directional swipe cursor is graphically indicative of a two-pointswipe in a designated direction.
 21. The method of claim 20, wherein:the first type of hands-free user input or the second type of hands-freeuser input comprises a single point directional swipe input; the firstcursor or the second cursor comprise a single point directional swipecursor associated with the single point directional swipe input; thesingle point directional swipe cursor comprises a circle with at leastone arrow disposed around a periphery thereof, the double pointdirectional swipe cursor comprises a circle larger than the circle ofthe single point directional swipe cursor with at least one arrowdisposed around a periphery thereof; and the at least one arrow disposedaround the periphery of a double point circle is graphically indicativeof the designated direction and the double point circle being larger isgraphically indicative of the two-point swipe in the designateddirection.
 22. The method of claim 20, wherein: the double pointdirectional swipe cursor comprises two at least partial circles mutuallyconnected with at least one arrow disposed around a periphery thereof;and the arrow is graphically indicative of the designated direction andthe two at least partial circles are graphically indicative of thetwo-point swipe in the designated direction.
 23. The method of claim 20,wherein: the double point directional swipe cursor comprises two circlesmutually proximate with at least one arrow disposed around a peripherythereof; and the arrow is graphically indicative of the designateddirection and the two circles are graphically indicative of thetwo-point swipe in the designated direction.
 24. The method of claim 20,wherein: the double point directional swipe cursor comprises a circlewith at least one pair of arrows disposed around a periphery thereof;and the pair of arrows is graphically indicative of the designateddirection and the two-point swipe in the designated direction.
 25. Themethod of claim 2, wherein: the first type of hands-free user input orthe second type of hands-free user input comprises a single point pressinput; the first cursor or the second cursor comprises a single pointpress cursor associated with the single point press input; and thesingle point press cursor is graphically indicative of a one-point pressat a designated position.
 26. The method of claim 25, wherein: thesingle point press cursor comprises a circle; and the circle isgraphically indicative of the designated position and the one-pointpress thereto.
 27. The method of claim 2, wherein: the first type ofhands-free user input or the second type of hands-free user inputcomprises a double point press input; the first cursor or the secondcursor comprise a double point press cursor associated with the doublepoint press input of the first type of hands-free user input or thesecond type of hands-free user input, respectively; and the double pointpress cursor of the first type of hands-free user input or the secondtype of hands-free user input is graphically indicative of a two-pointpress at a designated position.
 28. The method of claim 2, wherein: thefirst type of hands-free user input or the second type of hands-freeuser input comprises a double point press input; the first cursor or thesecond cursor comprise a double point press cursor associated with thedouble point press input of the first type of hands-free user input orthe second type of hands-free user input, respectively; and the doublepoint press cursor comprises a circle larger than a double pointdirectional swipe cursor circle.
 29. The method of claim 28, wherein:the double point press cursor comprises two at least partial circlesmutually connected; and the at least partial circles are graphicallyindicative of a designated position and the two at least partial circlesare graphically indicative of a double point touch thereto.
 30. Themethod of claim 28, wherein: the double point press cursor comprises twocircles mutually proximate; and the circles are graphically indicativeof a designated position and the two circles are graphically indicativeof the two-point touch thereto.
 31. The method of claim 2, wherein: thefirst type of hands-free user input or the second type of hands-freeuser input comprises a single point press and hold input; the firstcursor or the second cursor comprise a single point press and holdcursor associated with the single point press and hold input of thefirst type of hands-free user input or the second type of hands-freeuser input, respectively; and the single point press and hold inputcursor of the first type of hands-free user input or the second type ofhands-free user input is graphically indicative of a one-point press andhold at a designated position.
 32. The method of claim 31, wherein: thesingle point press and hold cursor comprises a circle with at least oneconcentric ring disposed thereabout; and the circle is graphicallyindicative of the designated position and the one-point press thereto,and a concentric ring is graphically indicative of a press and hold. 33.The method of claim 2, wherein: the first type of hands-free user inputor the second type of hands-free user input comprises a double pointpress and hold input; the first cursor or the second cursor comprise thedouble point press and hold cursor associated with the double pointpress and hold input of the first type of hands-free user input or thesecond type of hands-free user input, respectively; and the double pointpress and hold input cursor of the first type of hands-free user inputor the second type of hands-free user input is graphically indicative ofa two-point press at a designated position.
 34. The method of claim 33,wherein: the first type of hands-free user input or the second type ofhands-free user input comprises a single point press and hold input; thefirst cursor or the second cursor comprise single point press and holdcursor associated with the single point press and hold input of thefirst type of hands-free user input or the second type of hands-freeuser input, respectively; and the single point press and hold cursorcomprises a circle with at least one concentric ring disposedthereabout, the double point press and hold cursor comprises a circlelarger than a circle of the single point press and hold cursor with atleast one concentric ring disposed thereabout.
 35. The method of claim33, wherein: the double point press and hold cursor comprises two atleast partial circles mutually connected with two corresponding at leastpartial concentric rings disposed thereabout; and the at least partialcircles are graphically indicative of the designated position, the twoat least partial circles are graphically indicative of a double pointtouch thereto, and the two at least partial concentric rings aregraphically indicative of a press and hold.
 36. The method of claim 33,wherein: the double point press and hold cursor comprises two circlesmutually proximate with two corresponding concentric rings disposedthereabout; and the circles are graphically indicative of the designatedposition, the two circles are graphically indicative of a double pointtouch thereto, and the concentric rings are graphically indicative of apress and hold.
 37. The method of claim 2, wherein: the first type ofhands-free user input or the second type of hands-free user inputcomprises a pinch in input; the first cursor or the second cursorcomprise a pinch in cursor associated with the pinch in input of thefirst type of hands-free user input or the second type of hands-freeuser input, respectively; and the pinch in cursor of the first type ofhands-free user input or the second type of hands-free user input isgraphically indicative of a two-point distance closing motion.
 38. Themethod of claim 37, wherein: the pinch in cursor comprises two arrowsmutually proximate and oriented point to point; and the arrows aregraphically indicative of the two-point distance closing motion.
 39. Themethod of claim 38, wherein: the pinch in cursor comprises a visibleperimeter enclosing the arrows; and the visible perimeter enclosing thearrows is graphically indicative of the two-point distance closingmotion.
 40. The method of claim 37, wherein the pinch in cursorcomprises two circles mutually proximate.
 41. The method of claim 40,wherein: the pinch in cursor comprises a visible perimeter enclosing thecircles; and the visible perimeter enclosing the circles is graphicallyindicative of the two-point distance closing motion.
 42. The method ofclaim 2, wherein: the first type of hands-free user input or the secondtype of hands-free user input comprises a pinch out input; the firstcursor or the second cursor comprise a pinch out cursor associated withthe pinch out input of the first type of hands-free user input or thesecond type of hands-free user input, respectively; and the pinch outcursor is graphically indicative of a two-point distance opening motion.43. The method of claim 42, wherein: the pinch out cursor comprises twoarrows mutually proximate and oriented base to base; and the arrows aregraphically indicative of the two-point distance opening motion.
 44. Themethod of claim 43, wherein: the pinch out cursor comprises a visibleperimeter between the arrows; and the visible perimeter between thearrows is indicative of the two-point distance opening motion.
 45. Themethod of claim 44, wherein: the pinch out cursor comprises a visibleperimeter between circles; and the visible perimeter between the circlesis indicative of the two-point distance opening motion.
 46. The methodof claim 42, wherein the pinch out cursor comprises two circles mutuallyproximate.
 47. A device, comprising: a processing device configured to:establish a one-finger input, a two-finger input, a pinch-in input, anda pinch-out input, user inputs comprising free space hand gestureinputs; establish a base form, a hover form, an engaged press form, andan engaged press-and-hold form for said one-finger input; establish abase form, an engaged press form, and an engaged swipe form for saidtwo-finger input; establish a base form and an engaged form for saidpinch-out input; establish a base form and an engaged form for saidpinch-in input; establish a plurality of graphical cursors andassociating each of said plurality of graphical cursors with at leastone of said user inputs, comprising: a base form one-finger inputgraphical cursor comprising a hollow circle with dashed crosshair marksdisposed around a periphery thereof, associated with said base form ofsaid one-finger input; a hover form one-finger input graphical cursorcomprising a hollow circle with contracted dashed crosshair marksdisposed around a periphery thereof, associated with said hover form ofsaid one-finger input; an engaged form one-finger press input graphicalcursor comprising a filled circle, associated with said engaged pressform of said one-finger input; an engaged form one-finger press-and-holdinput graphical cursor comprising a filled circle with at least oneconcentric circle thereabout, associated with said engagedpress-and-hold form of said one-finger input; a base form two-fingerinput graphical cursor comprising a hollow circle with arrow marksdisposed around a periphery thereof, associated with said base form ofsaid two-finger input; an engaged form two-finger press input graphicalcursor comprising a filled circle with arrow marks disposed around aperiphery thereof, associated with said engaged press form of saidtwo-finger input; an engaged form two-finger swipe input graphicalcursor comprising a filled circle with arrow marks disposed around aperiphery thereof with at least one of said arrow marks comprising atleast two arrows, associated with said engaged press-and-hold form ofsaid two-finger input; a base form pinch-out input graphical cursorcomprising a hollow dashed circle with arrow marks disposed around aperiphery thereof and pointing outward therefrom, associated with saidbase of said pinch-out input; an engaged form pinch-out input graphicalcursor comprising a filled dashed circle with arrow marks disposedaround a periphery thereof and pointing outward therefrom with each ofsaid arrow marks comprising at least two arrows, associated with saidengaged form of said pinch-out input; a base form pinch-in inputgraphical cursor comprising a hollow dashed circle with arrow marksdisposed within a periphery thereof and pointing inward therefrom,associated with said base of said pinch-in input; a base form pinch-ininput graphical cursor comprising a filled dashed circle with arrowmarks disposed within a periphery thereof and pointing inward therefromwith each of said arrow marks comprising at least two arrows, associatedwith said engaged form of said pinch-in input; and wherein each of saidplurality of graphical cursors is graphically distinctive from othercursors and is graphically indicative of said user inputs associatedtherewith, so as to identify to a viewer of a graphical display saidanticipated user input; anticipate an anticipated user input; andoutput, to a graphical display, said base form of said cursor associatedwith said anticipated user input; the graphical display coupled to theprocessing device, wherein the graphical display is configured todisplay the base form of said cursor associated with said anticipateduser input; and a sensor coupled to the processing device, the sensorbeing configured to: detect a user hover, wherein if said detected userhover corresponds with said anticipated user input associated with anoutputted cursor and said outputted cursor comprises said hover form,the processing device is configured to output to said graphical displaysaid hover form of said cursor associated with said anticipated userinput, so as to confirm to said viewer a match between said anticipateduser input and said detected user hover; and detect a user input,wherein if said detected user input corresponds with said anticipateduser input associated with said outputted cursor and said outputtedcursor comprises said engaged form, the processing device outputting tosaid graphical display said engaged form of said cursor associated withsaid anticipated user input, so as to confirm to said viewer a matchbetween said anticipated user input and said detected user input.